Version: 6000.3
语言: 中文
将表单发送到 HTTP 服务器 (POST)
高级作:使用 LLAPI

将原始数据上传到 HTTP 服务器 (PUT)

一些现代 Web 应用程序更喜欢通过 HTTP PUT 谓词上传文件。对于此方案,Unity 提供了UnityWebRequest.PUT功能。

此函数接受两个参数。第一个参数是一个字符串,指定请求的目标 URL。第二个参数可以是字符串或字节数组,并指定要发送到服务器的有效负载数据。

函数签名:

WebRequest.Put(string url, string data);
WebRequest.Put(string url, byte[] data);

  • 此函数创建了一个UnityWebRequest并将内容类型设置为application/octet-stream.
  • 此功能附加了一个标准DownloadHandlerBufferUnityWebRequest.与 POST 函数一样,您可以使用它从应用程序返回结果数据。
  • 此函数将输入上传数据存储在标准UploadHandlerRaw对象并将其附加到UnityWebRequest.因此,如果使用byte[]函数,在UnityWebRequest.PUT调用不会反映在上传到服务器的数据中。

using UnityEngine;
using UnityEngine.Networking;
using System.Collections;
 
public class MyBehavior : MonoBehaviour {
    void Start() {
        StartCoroutine(Upload());
    }
 
    IEnumerator Upload() {
        byte[] myData = System.Text.Encoding.UTF8.GetBytes("This is some test data");
        UnityWebRequest www = UnityWebRequest.Put("https://www.my-server.com/upload", myData);
        yield return www.SendWebRequest();
 
        if (www.result != UnityWebRequest.Result.Success) {
            Debug.Log(www.error);
        }
        else {
            Debug.Log("Upload complete!");
        }
    }
}
将表单发送到 HTTP 服务器 (POST)
高级作:使用 LLAPI