HttpRequestHelper.cs 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. using System;
  2. using System.Collections.Generic;
  3. using System.IO;
  4. using System.Linq;
  5. using System.Net;
  6. using System.Net.Security;
  7. using System.Security.Cryptography.X509Certificates;
  8. using System.Text;
  9. using System.Threading.Tasks;
  10. namespace NX_CommonClassLibrary
  11. {
  12. public static class HttpRequestHelper
  13. {
  14. /// <summary>
  15. /// 票据
  16. /// </summary>
  17. public static string _Ticket { get; set; }
  18. private static bool RemoteCertificateValidate(object sender, X509Certificate cert, X509Chain chain, SslPolicyErrors error)
  19. {
  20. return true;
  21. }
  22. public static string POST(string url, string pramstr)
  23. {
  24. HttpWebRequest request = null;
  25. if (url.Contains("https://"))
  26. {
  27. ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(RemoteCertificateValidate);
  28. request = (HttpWebRequest)WebRequest.CreateDefault(new Uri(url));
  29. }
  30. else
  31. {
  32. request = (HttpWebRequest)WebRequest.Create(url);
  33. }
  34. request.Method = "POST";
  35. request.ContentType = "application/json; charset=utf-8";
  36. if (!string.IsNullOrWhiteSpace(_Ticket))
  37. {
  38. request.Headers.Add("Authorization", "Bearer " + _Ticket);
  39. }
  40. var jsonbyte = Encoding.UTF8.GetBytes(pramstr);
  41. using (var postStream = request.GetRequestStream())
  42. {
  43. postStream.Write(jsonbyte, 0, jsonbyte.Length);
  44. }
  45. HttpWebResponse res;
  46. StreamReader sr;
  47. string content;
  48. try
  49. {
  50. res = (HttpWebResponse)request.GetResponse();
  51. sr = new StreamReader(res.GetResponseStream(), Encoding.UTF8);
  52. content = sr.ReadToEnd();
  53. }
  54. catch (WebException ex)
  55. {
  56. content = ex.Message;
  57. }
  58. return content;
  59. }
  60. }
  61. }