齐射处理onErrorResponse [英] Volley handle onErrorResponse

查看:61
本文介绍了齐射处理onErrorResponse的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在获取状态400,并且服务器给出了一些响应,我可以在其中获取该消息

I am getting status 400 and server giving some response , where i can get that message

 @Override
 public void onErrorResponse(VolleyError error) {
       NetworkResponse errorRes = error.networkResponse;
       Log.d(TAG, errorRes.statusCode+"");
 }

我如何获取哪个服务器给我的消息.基本上,除了200次齐射之外,还会给出errorresponse.现在我可以在哪里记录我得到的数据?

how I can get message which server giving me . basically apart from 200 volley will give errorresponse. Now where can I data which I am getting?

errorRes.data也提供了错误的信息.

errorRes.data also giving wrong info.

推荐答案

您可以通过重写parseNetworkError来解析错误消息(如果可用),如下所示:

You can parse the error message if available by overriding parseNetworkError as the following:

            @Override
            protected VolleyError parseNetworkError(VolleyError volleyError) {
                String json;
                if (volleyError.networkResponse != null && volleyError.networkResponse.data != null) {
                    try {
                        json = new String(volleyError.networkResponse.data,
                                HttpHeaderParser.parseCharset(volleyError.networkResponse.headers));
                    } catch (UnsupportedEncodingException e) {
                        return new VolleyError(e.getMessage());
                    }
                    return new VolleyError(json);
                }
                return volleyError;
            }

希望有帮助!

这篇关于齐射处理onErrorResponse的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆