Unity Web Request Uploading Raw Data
Upload raw data to a server with an HTTP PUT request using UnityWebRequest.Put.
阅读时间2 分钟最后更新于 1 个月前
一些现代 Web 应用程序更喜欢通过 HTTP PUT 动词上传文件。针对这种情况,Unity 提供了 函数。
UnityWebRequest.PUT此函数采用两个参数。第一个参数是一个字符串,用于指定请求的目标 URL。第二个参数是字符串或字节数组,用于指定要发送到服务器的有效负载数据。
函数签名:
WebRequest.Put(string url, string data);WebRequest.Put(string url, byte[] data);
详细信息
- 此函数创建 并将内容类型设置为
UnityWebRequest。application/octet-stream - 此函数将标准 附加到
DownloadHandlerBuffer。与 POST 函数一样,此函数可用于从应用程序返回结果数据。UnityWebRequest - 此函数将输入的上传数据存储在标准 对象中,然后将此对象附加到
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!"); } }}