我创建了一个继承UnityWebRequest的类。
它仅具有string url
,string method
和byte[] form
作为参数。
我想将WWWForm对象放入此byte[] form
中。当我检查元数据时,WWWForm似乎是由Dictionary组成的。
如果我可以检查Unity内部源代码,我自己会解决的,但我不能。
如何解决此问题?我想对{strong> application / x-www-form-urlencoded 使用WWWForm
。我想找到一种将WWWForm转换为字节数组的方法。抱歉。我英语很差。请告诉我是否还有其他方法。
答案 0 :(得分:1)
我想找到一种将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 returns
yield return uwr.SendWebRequest();
if (uwr.isNetworkError)
{
Debug.Log("Error While Sending: " + uwr.error);
}
else
{
Debug.Log("Received: " + uwr.downloadHandler.text);
}