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

本文介绍了如何在Unity中通过UnityWebRequest.PUT方法上传原始数据到HTTP服务器,包括函数签名、示例代码以及注意事项,适用于现代Web应用程序的HTTP PUT动词上传需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

将表单发送到 HTTP 服务器 (POST)

高级操作:使用 LLAPI

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

注意:已弃用 UNet,未来会将其从 Unity 中删除。一个新系统正在开发中。如需了解更多信息和后续步骤,请参阅此博客文章以及常见问题解答 (FAQ)。

一些现代 Web 应用程序更喜欢通过 HTTP PUT 动词上传文件。针对这种情况,Unity 提供了 UnityWebRequest.PUT 函数。

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

函数签名:

WebRequest.Put(string url, string data);

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

详细信息

此函数创建 UnityWebRequest 并将内容类型设置为 application/octet-stream。

此函数将标准 DownloadHandlerBuffer 附加到 UnityWebRequest。与 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("http://www.my-server.com/upload", myData);

yield return www.SendWebRequest();

if(www.isNetworkError || www.isHttpError) {

Debug.Log(www.error);

}

else {

Debug.Log("Upload complete!");

}

}

}

将表单发送到 HTTP 服务器 (POST)

高级操作:使用 LLAPI

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值