1. 创建连接
// 以下两种方式等价
new UnityWebRequest(url);
UnityWebRequest.Get(url);
2. 设置http传输的表头
www.SetRequestHeader("User-Agent", "Mozilla / 5.0(Windows NT 10.0;WOW64) AppleWebKit / 537.36(KHTML, likeGecko) Chrome / 75.0.3770.100Safari / 537.36");
www.SetRequestHeader("Content-Type", "utf8");
3. 获取传输的文本
www.downloadHandler.text
4. 获取传输的图片:DownloadHandlerTexture
DownloadHandlerTexture texDl = new DownloadHandlerTexture(true);
// 设置引用
www.downloadHandler = texDl;
Texture2D t = texDl.texture;
GetComponent().overrideSprite = Sprite.Create(t, new Rect(0, 0, t.width, t.height), Vector2.zero, 1f);
GetComponent().texture = t;
实例
IEnumerator UploadCardBase(string url)
{
var www = new UnityWebRequest(url);
DownloadHandlerTexture texDl = new DownloadHandlerTexture(true);
www.downloadHandler = texDl;
yield return www.SendWebRequest();
// 材质
Renderer renderer = GetComponent();
renderer.material.mainTexture = texDl.texture;
Texture2D t = texDl.texture;
// 图像
GetComponent().overrideSprite = Sprite.Create(t, new Rect(0, 0, t.width, t.height), Vector2.zero, 1f);
// 原始图像
GetComponent().texture = t;
}
IEnumerator UploadCardBase2(string url)
{
var www = UnityWebRequest.Get(url);
www.SetRequestHeader("User-Agent", "Mozilla / 5.0(Windows NT 10.0;WOW64) AppleWebKit / 537.36(KHTML, likeGecko) Chrome / 75.0.3770.100Safari / 537.36");
www.SetRequestHeader("Content-Type", "utf8");
yield return www.SendWebRequest();
if (www.result == UnityWebRequest.Result.ProtocolError || www.result == UnityWebRequest.Result.ConnectionError)
{
Debug.Log(www.error);
}
else
{
Debug.Log(www.downloadHandler.text);
}
}