HttpWebRequsetManger.cs 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. using LitJson;
  2. using System;
  3. using System.Collections;
  4. using System.Collections.Generic;
  5. using System.IO;
  6. using System.Net;
  7. using System.Text;
  8. using UnityEngine;
  9. using UnityEngine.Networking;
  10. using UnityEngine.SceneManagement;
  11. /// <summary>
  12. /// 发送服务器
  13. /// </summary>
  14. public class HttpWebRequsetManger
  15. {
  16. public static void SendHttpData(string heraddata,string url,string requestJson, Action<string> callback)
  17. {
  18. try
  19. {
  20. byte[] byteArray = System.Text.Encoding.UTF8.GetBytes(requestJson);
  21. HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(new Uri(url));
  22. webRequest.Method = "POST";
  23. webRequest.ContentType = "application/json";
  24. webRequest.ContentLength = byteArray.Length;
  25. webRequest.Headers.Add("x_auth_token", heraddata);
  26. webRequest.Timeout = 5000;
  27. Stream newStream = webRequest.GetRequestStream();
  28. newStream.Write(byteArray, 0, byteArray.Length);
  29. newStream.Close();
  30. HttpWebResponse response = (HttpWebResponse)webRequest.GetResponse();
  31. StreamReader sr = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
  32. //检验状态码,如果成功接收数据
  33. int code = response.GetHashCode();
  34. //Debug.Log("code: " + code);
  35. string str = sr.ReadToEnd();
  36. //Debug.Log("str: " + str);
  37. //Log.Debug("HttpWebRequsetManger "+ str);
  38. webRequest.Abort();
  39. response.Close();
  40. sr.Close();
  41. callback.Invoke(str);
  42. }
  43. catch (Exception e)
  44. {
  45. e.ToString();
  46. //Log.Error("HttpWebRequsetManger Exception "+ e.ToString());
  47. Debug.Log("e: " + e.ToString());
  48. }
  49. }
  50. }