0

我正在使用烧瓶服务器并让 Unity 访问它。在 Postman 中测试它(使用平台:测试)给了我ImmutableMultiDict([('platform', 'test')])(Flask 中 request.form 的结果),它可以工作。但是当统一发出一个发布请求(提供代码)时,它给了我ImmutableMultiDict([]). 我不完全确定这是 Unity 还是 Flask 问题。非常感谢您的帮助。

IEnumerator PostRequest(string url)
{
    WWWForm form = new WWWForm();
    form.AddField("platform", "test");

    UnityWebRequest uwr = UnityWebRequest.Post(url, form);
    uwr.uploadHandler.contentType = "multipart/form-data";
    yield return uwr.SendWebRequest();

    if (uwr.isNetworkError)
    {
        Debug.Log("Error While Sending: " + uwr.error);
    }
    else
    {
        Debug.Log("Received: " + uwr.downloadHandler.text);
    }
}
4

1 回答 1

0

我已经解决了这个问题。Unity 的数据格式与 PostMan 大不相同,我的 Flask 服务器无法读取它。我发现不是在 Flask中使用request.form[key]or ,而是与 Postman 的请求和 Unity 的请求完美配合。request.data[key]request.form.getlist(key)

于 2021-06-24T18:34:16.680 回答