文章目录
在前后端的交互中,我们很经常将 Json 格式的数据装入请求体,向后端发送 Post 请求。
Unity 提供了 UnityWebRequest 这个和网络有关的类,我们可以借助它实现数据的请求和响应的接收。想了解详情可参考 Unity 官方文档中相关的 API 介绍:UnityWebRequest
那么下面就来为大家演示一下如何利用 UnityWebRequest 发送 Json 数据格式的 Post 请求。后端的部分我是用基于 Java 的 SpringBoot 框架搭建的程序,对应的接口用了 @RequestBody 注解来接收前端传来的 Json 请求参数。这里就不具体演示后端怎么写了,本篇博客还是把重点放在 Unity 前端的实现方法上,总的来说有两种实现方式,但不论是哪一种,思路都是一样的,只是代码的实现上有些不同。
🔍 方法一 :new UnityWebRequest
如果在百度上搜,可能大部分会搜到这种实现方式,我先附上代码,然后再具体解释:
private void Start() {
string url="xxx";
string json="一个Json格式的数据,这里大家替换成自己想要测试的Json数据";
StartCoroutine(I_RequestByJsonBodyPost(url,json));
}
private static IEnumerator I_RequestByJsonBodyPost(string url, string json)
{
UnityWebRequest www = new UnityWebRequest(url, UnityWebRequest.kHttpVerbPOST);
DownloadHandler downloadHandler = new DownloadHandlerBuffer();
www.downloadHandler = downloadHandler;
www

本文详细介绍了Unity中使用UnityWebRequest进行Json格式Post请求的两种方法,包括newUnityWebRequest和UnityWebRequest.Post。针对UnityWebRequest.Post可能导致的后端数据格式错误问题,文章深入剖析了原因在于内部的URL编码,并给出了正确的解决方案。内容涵盖UnityWebRequest的使用技巧,如设置Content-Type、管理uploadHandler和downloadHandler,以及解决URL编码问题的方法。

825

被折叠的 条评论
为什么被折叠?



