- 项目开发中有时候需要Get请求来获取一些数据
代码如下
区分测试环境正式环境
Get类型直接请求
Get类型
public static UnityWebRequest GetImageUrl(int id)
{
string url = "https://" + usNetworkConfig.IP + "url?id=" + id;
var request = new UnityWebRequest(url, UnityWebRequest.kHttpVerbGET);
request.downloadHandler = new DownloadHandlerBuffer();
request.SetRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");
request.SetRequestHeader("User-Token",token);
return request;
}
获取当前时间
static public string GetTimeName()
{
return System.DateTime.Now.Year.ToString() + "/" + System.DateTime.Now.Month.ToString() + "/" +
System.DateTime.Now.Day.ToString() + " " + System.DateTime.Now.Hour.ToString() + ":" +
System.DateTime.Now.Minute.ToString() + ":" + System.DateTime.Now.Second.ToString() + "\n";
}
外部调用
private IEnumerator RequestUrl(int id)
{
var request = usTaskCloudWebRequest.GetImageUrl(id);
if (request != null)
{
request.timeout = 5;
yield return request.SendWebRequest();
Debug.Log(request.responseCode);
if (request.responseCode == 200)
{
Debug.Log(request.downloadHandler.text);
var result = ResultUtiBean.CreateResultUtiBean(request.downloadHandler.text);
Debug.Log(result.code);
if (result.code.Equals("SUCCESS"))
{
Debug.Log(usCloudWebRequest.GetTimeName() + "查询成功!");
}
else
{
Debug.Log(usCloudWebRequest.GetTimeName() + "查询失败!");
}
}
else
{
Debug.Log(usCloudWebRequest.GetTimeName() + "无法访问服务器,请检查网络连接!");
}
}
}
Post传递参数
public static UnityWebRequest GetTaskList(int tasksType, string tasksName)
{
string url = "https://" + usNetworkConfig.IP + "接口";
Debug.Log(url);
var request = new UnityWebRequest(url, UnityWebRequest.kHttpVerbPOST);
request.SetRequestHeader("Content-Type", "application/json;charset=utf-8");
request.SetRequestHeader("User-Token",token);
JsonData data = new JsonData();
data["tasksType"] = tasksType;
data["tasksName"] = tasksName;
byte[] postBytes = System.Text.Encoding.Default.GetBytes(data.ToJson());
request.uploadHandler = (UploadHandler)new UploadHandlerRaw(postBytes);
var downloadHandler = new DownloadHandlerBuffer();
request.downloadHandler = downloadHandler;
return request;
}```
```csharp
private IEnumerator RequestEnvironment(string m_code)
{
string _url = "url" + m_code;
UnityWebRequest request = UnityWebRequest.Get(_url);
yield return request.SendWebRequest();
if (request.isNetworkError || request.isNetworkError)
{
Debug.Log(request.error);
}
else
{
Debug.Log(request.downloadHandler.text);
DevesData root = JsonMapper.ToObject<DevesData>(request.downloadHandler.text);
}
}```