【问题标题】:How to send images from Unity to Django through Json type如何通过 Json 类型将图像从 Unity 发送到 Django
【发布时间】:2018-04-04 15:22:01
【问题描述】:

我想要 Django 和 Unity 之间的图像请求。所以,我想使用 UnityWebRequest 将图像数据发送到 Json 类型。

下面的源代码是Unity C#代码。

public void onClickSendButton(){
    coroutine = ServerThrows();
    StartCoroutine(coroutine);
}

IEnumerator ServerThrows()
{
    string imageAsJson = File.ReadAllText(imagePath);
    byte[] bodyRaw = System.Text.Encoding.UTF8.GetBytes(imageAsJson);
    UnityWebRequest www = new UnityWebRequest(url, "POST");
    www.uploadHandler = (UploadHandler) new UploadHandlerRaw(bodyRaw);
    www.downloadHandler = (DownloadHandler) new DownloadHandlerBuffer();
    www.chunkedTransfer = false;
    www.SetRequestHeader("Content-Type","application/json");

    yield return www.SendWebRequest();

    if(www.isNetworkError||www.isHttpError){
        Debug.Log(www.error);
    }
    else
    {
        GetResponse(www);
    }
}

这是 Django 服务器代码:

def fromunity(request):
    data = json.loads(request.body.decode('utf-8'))
    print(data)
    print(request.content_type)
    return HttpResponse()

在 Unity 中,当我通过 onClickSendButton 发送请求时,Django Server 显示以下结果: enter image description here

(json.decoder.JSONDecodeError: 期望值: line 1 column 1 (char 0))

根据上面的 Django Server 结果,我该怎么办?

【问题讨论】:

    标签: json django unity3d request


    【解决方案1】:

    这是一个关于 Json 是什么形式的问题。 Json 可以简单地将 Unity 的 wwwform 表示为字符串。所以,我可以构造如下形式。

    string form = "{\'image\':\'String representation of the image\'}"
    

    这是我对 Json 的无知。

    【讨论】:

      猜你喜欢
      • 2013-06-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-13
      相关资源
      最近更新 更多