DataManager.cs 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. using System;
  2. using System.Collections;
  3. using System.Collections.Generic;
  4. using System.Text;
  5. using LitJson;
  6. using UnityEngine;
  7. using UnityEngine.Networking;
  8. using System.Security.Cryptography;
  9. using Random = System.Random;
  10. public class DataManager : MonoBehaviour
  11. {
  12. public static bool isshowtime;
  13. public static int admin=0;
  14. public static string acc="";
  15. public static string email="";
  16. public static string token="";
  17. public static DataManager Instance;
  18. private void Awake()
  19. {
  20. Instance = this;
  21. // StartCoroutine(wx_demo("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=wx9a280bbd81c64f56&secret=aeb6e5818800f8196fcac007e992dae0"));
  22. }
  23. public void login(JsonData data, Action<string> callback)
  24. {
  25. StartCoroutine(Post_Demo("/damon-tianji/v1/base/login", data.ToJson(), (string msg) => {
  26. callback.Invoke(msg);
  27. }));
  28. }
  29. public void GetGongDanList(JsonData data, Action<string> callback)
  30. {
  31. StartCoroutine(Post_Demo("/damon-tianji/v1/wo/list", data.ToJson(), (string msg) => {
  32. callback.Invoke(msg);
  33. }));
  34. }
  35. public void GetMainInfo( Action<string> callback)
  36. {
  37. StartCoroutine(Post_Demo("/damon-tianji/v1/wo/app/home","", (string msg) => {
  38. callback.Invoke(msg);
  39. }));
  40. }
  41. public void GetBaoGaoItem(JsonData data, Action<string> callback)
  42. {
  43. StartCoroutine(Post_Demo("/damon-tianji/v1/wo/detail", data.ToJson(), (string msg) => {
  44. callback.Invoke(msg);
  45. }));
  46. }
  47. public void GetBaoGaoConfig( Action<string> callback)
  48. {
  49. StartCoroutine(Post_Demo("/damon-tianji/v1/demand/config", "", (string msg) => {
  50. callback.Invoke(msg);
  51. }));
  52. }
  53. public void Gecredentialg( Action<string> callback)
  54. {
  55. StartCoroutine(Post_Demo("/damon-tianji/v1/storage/credential", "", (string msg) => {
  56. callback.Invoke(msg);
  57. }));
  58. }
  59. public void GetXuQiuInfo(JsonData data, Action<string> callback)
  60. {
  61. StartCoroutine(Post_Demo("/damon-tianji/v1/demand/detail", data.ToJson(), (string msg) => {
  62. callback.Invoke(msg);
  63. }));
  64. }
  65. public void completeGongdan(JsonData data, Action<string> callback)
  66. {
  67. StartCoroutine(Post_Demo("/damon-tianji/v1/wo/complete", data.ToJson(), (string msg) => {
  68. callback.Invoke(msg);
  69. }));
  70. }
  71. public void Gongdanchange(JsonData data, Action<string> callback)
  72. {
  73. StartCoroutine(Post_Demo("/damon-tianji/v1/wo/processing", data.ToJson(), (string msg) => {
  74. callback.Invoke(msg);
  75. }));
  76. }
  77. public static string ip = "https://api-fat1.ghz-tech.com";//"https://api-cs.ghz-tech.com";//
  78. public IEnumerator Post_Demo(string url,string lstformData,Action<string> callback)
  79. {
  80. Debug.Log("开始请求" + url + "_" + lstformData);
  81. while (ip=="")
  82. {
  83. Debug.Log("ip未设置" + ip + "_" + lstformData);
  84. yield return null;
  85. }
  86. string m_url = ip + url;
  87. Debug.Log("请求地址" + m_url + "_" + lstformData);
  88. var request = new UnityWebRequest(m_url, "POST");
  89. byte[] bodyRaw = Encoding.UTF8.GetBytes(lstformData);
  90. request.uploadHandler = (UploadHandler)new UploadHandlerRaw(bodyRaw);
  91. request.SetRequestHeader("Content-Type", "application/json");
  92. request.SetRequestHeader("lang", "zh");
  93. request.SetRequestHeader("platform", "phone");
  94. DownloadHandler downloadHandler = new DownloadHandlerBuffer();
  95. request.downloadHandler = downloadHandler;
  96. Debug.Log("AUTHORIZATION===>"+DataManager.token);
  97. if (DataManager.token!="")
  98. request.SetRequestHeader("AUTHORIZATION", DataManager.token);
  99. yield return request.SendWebRequest();
  100. if (string.IsNullOrEmpty(request.error))
  101. {//Post的请求成功 //Post请求的返回参数
  102. var data = request.downloadHandler.text;
  103. Debug.Log(m_url+"_"+ lstformData + "——成功:" + data);
  104. callback.Invoke(data);
  105. }
  106. else
  107. {//Post的请求失败
  108. Debug.Log(m_url + "失败"+ lstformData+"_"+ request.error+"_"+request.downloadHandler.text);
  109. callback.Invoke(null);
  110. }
  111. }
  112. public IEnumerator Get_Demo(string url, string lstformData, Action<string> callback)
  113. {
  114. Debug.Log("开始请求" + url + "_" + lstformData);
  115. while (ip == "")
  116. {
  117. Debug.Log("ip未设置" + ip + "_" + lstformData);
  118. yield return null;
  119. }
  120. string m_url = ip + url;
  121. Debug.Log("请求地址" + m_url + "_" + lstformData);
  122. var request = new UnityWebRequest(m_url, "Get");
  123. byte[] bodyRaw = Encoding.UTF8.GetBytes(lstformData);
  124. request.uploadHandler = (UploadHandler)new UploadHandlerRaw(bodyRaw);
  125. request.SetRequestHeader("Content-Type", "application/json");
  126. DownloadHandler downloadHandler = new DownloadHandlerBuffer();
  127. request.downloadHandler = downloadHandler;
  128. if (DataManager.token != "")
  129. request.SetRequestHeader("AUTHORIZATION", DataManager.token);
  130. yield return request.SendWebRequest();
  131. if (string.IsNullOrEmpty(request.error))
  132. {//Post的请求成功 //Post请求的返回参数
  133. var data = request.downloadHandler.text;
  134. Debug.Log(m_url + "_" + lstformData + "——成功:" + data);
  135. callback.Invoke(data);
  136. }
  137. else
  138. {//Post的请求失败
  139. Debug.Log(m_url + "失败" + lstformData + "_" + request.error);
  140. callback.Invoke(null);
  141. }
  142. }
  143. }