android - 如何在 Volley onErrorResponse 中获取 JSON 错误响应

标签 android android-studio

我有一个包含以下详细信息的 API 调用

URL: http://pankajservers.in/api/v1/AuthenticateUser with Input params below

EmailAddress and Password

如果我输入错误的凭据,我会收到以下 JSON 响应,状态代码:403

{"Status":false,"Message":"Invalid Credentials. 5 attempts left.","Data":null}

以下是错误响应代码。

new Response.ErrorListener()
{
    @Override
    public void onErrorResponse(VolleyError error)
    {
        if (null != error.networkResponse)
        {
            Log.d(TAG + ": ", "Error Response code: " + error.networkResponse.statusCode);
        }
    }
});

有没有办法在这个代码块中获取 JSON 响应?

我试过这个帖子:Volley handle onErrorResponse

但它似乎从不执行 parseNetworkError

最佳答案

要在该 block 上打印错误,您只需要获取响应字节:

 NetworkResponse networkResponse = error.networkResponse;
 if (networkResponse != null && networkResponse.data != null) {
       String jsonError = new String(networkResponse.data);
       // Print Error!
 }

关于android - 如何在 Volley onErrorResponse 中获取 JSON 错误响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42038626/

相关文章:

android - 如何将可扩展回收器 View 的父 View 设置为默认展开

Android - 如何设置壁纸图像?

java - 如何避免使用许多 @SerializedName ?

android - 如何加速 Android Studio 3.0

android-studio - 如何使用 Flutter 在 android studio 中为代码折叠做区域 block

java.lang.ClassNotFoundException引起的Android RuntimeException

android - 在 ActiveAndroid 中截断表后未保存的最后一个对象

android - AppCompat 问题

android - 华为 P40 Pro (ELS-NX9) 上的 INSTALL_FAILED_ABORTED 错误

java - Android 以编程方式添加 View 重复索引