学习目标:
using LitJson;
using Newtonsoft.Json;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;
using System.Threading;
using UnityEngine;
using UnityEngine.Networking;
public class WebRequestTest :MonoBehaviour
{
public delegate void HttpHelperPostGetCallbacks(long code, HttpHelperRequests request, HttpHelperResponses rsponse);
[Serializable]
public struct HttpHelperRequests
{
public string url;
public JsonData filelds;
public JsonData headers;
public string token;
public string session;
}
[Serializable]
public struct HttpHelperResponses
{
public long code;
public string message;
public Dictionary<string, string> headers;
public string text;
public byte[] bytes;
public Texture texture;
public Thread thread;
public AssetBundle bundle;
public T Deserialize<T>()
{
return JsonConvert.DeserializeObject<T>(this.text);
}
}
#region UnityWebRequest
private void SendRequest(string url, HttpHelperPostGetCallbacks callback, JsonData fields = null, JsonData header = null, int timeout = 5)
{
StartCoroutine(_SendRequest(url, callback, fields, header, timeout));
}
IEnumerator _SendRequest(string url, HttpHelperPostGetCallbacks callback, JsonData fields = null, JsonData header = null, int timeout = 5)
{
using (UnityWebRequest webRequest = new UnityWebRequest(url))
{
webRequest.timeout = timeout;
yield return webRequest.