从常规 WWW 切换到 UnityWebRequest 的问题

Switch from regular WWW to UnityWebRequest issues

我目前正在使用 Unity 的 WWW 调用我的后端,它工作正常,除了这个:

我需要获取错误响应头和 body,但不确定如何完成:

WWW www = new WWW(url_base + param[0]);

yield return www;

if (www.error == null)
{
    Debug.Log("Perfect!");
} 
else
{
    // Needs to handle the errors from header and body
    Debug.Log("ERROR: "+www.error);
} 

是否可以从 www 中检索 header 和 body?

如果是,舍弃问题的第二部分,否则...

这可以通过使用 UnityWebRequest 来完成吗?

如果我使用 UWR,这可能吗?

我有一些 www 看起来像这样:

www = new WWW(url_base + param[0], Encoding.UTF8.GetBytes(param[1].ToString()), CreateHeader(false));

我建议您使用 unity web 请求来统一处理后端,因为 www 将在较新版本的 unity 中删除。回到你的问题: 您可以使用统一网络请求的 public 方法获得所有响应 headers,如下所示:

UnityWebRequest unityWebRequest;
unityWebRequest.GetResponseHeaders(); // it returns the list of all headers

您还可以使用 unity web 请求获取错误响应,如下所示:

unityWebRequest.error; //it returns the error response

我建议您使用统一网络请求,因为它是处理后端的首选和未来统一

https://docs.unity3d.com/ScriptReference/Networking.UnityWebRequest.html