Version: 2022.2
public static Networking.UnityWebRequest Put (string uri, byte[] bodyData);
public static Networking.UnityWebRequest Put (string uri, string bodyData);

参数

uri 要向其发送数据的 URI。
bodyData 要传输到远程服务器的数据。

If a string, the string will be converted to raw bytes via System.Text.Encoding.UTF8.

返回

UnityWebRequest 创建经配置可通过 HTTP PUT 向 uri 传输 bodyData 的 UnityWebRequest。

描述

创建一个经配置可通过 HTTP PUT 将原始数据上传到远程服务器的 UnityWebRequest。

此方法可创建一个 UnityWebRequest,将目标 URL 设置为字符串 uri 参数,并将 method 设置为 PUT。此方法还将 Content-Type 标头设置为 application/octet-stream

此方法将一个标准 DownloadHandlerBuffer 附加到 UnityWebRequest。这是为了在开发过程中提供方便,以及便于应用程序在 HTTP 响应主体中返回关于上传数据的状态信息。

此方法将输入的上传数据存储在一个 UploadHandlerRaw 对象中,并将该对象附加到 UnityWebRequestUploadHandlerRaw 将输入的数据复制到缓冲区。因此,调用此方法后执行的对 bodyData 数组的更改将不会反映在发送到服务器的数据中。

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"); using (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!"); } } } }