如何将作为 UploadHandlerRaw 参数的 WWWForm 转换为字节数组?

我创建了一个继承 UnityWebRequest 的类。它只有string urlstring method, 和byte[] form作为参数。我想把 WWWForm 对象放在这个byte[] form. 当我查看元数据时,WWWForm 似乎是由一个 Dictionary 组成的。如果我可以检查Unity内部源代码,我会自己解决它,但我不能。我该如何解决这个问题?我想WWWForm用于application/x-www-form-urlencoded。我想找到一种将 WWWForm 转换为字节数组的方法。对不起。我的英语很差。请让我知道是否有任何其他方式。


绝地无双
浏览 591回答 1
1回答

哔哔one

我想找到一种方法将 WWWForm 转换为字节数组这可以通过WWWForm.data属性来完成。你的WWWForm:WWWForm form = new WWWForm();form.AddField( "blah-blah-blah", "value" );转换WWWForm为字节数组:byte[] rawData = form.data;使用它UploadHandlerRaw:WWWForm form = new WWWForm();form.AddField("blah-blah-blah", "value");byte[] rawData = form.data;string url = "YOUR URL";var uwr = new UnityWebRequest(url, "POST");uwr.uploadHandler = (UploadHandler)new UploadHandlerRaw(rawData);uwr.downloadHandler = (DownloadHandler)new DownloadHandlerBuffer();uwr.SetRequestHeader("Content-Type", "application/json");//Send the request then wait here until it returnsyield return uwr.SendWebRequest();if (uwr.isNetworkError){    Debug.Log("Error While Sending: " + uwr.error);}else{    Debug.Log("Received: " + uwr.downloadHandler.text);}
打开App,查看更多内容
随时随地看视频慕课网APP