Bar*_*urg 11 java networking android httpresponse android-volley
我正在寻找一种方法来获取抛出的VolleyError的响应代码.我的ErrorListener看起来像这样:
Response.ErrorListener errorListener = new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
error.printStackTrace();
//Get response code here
VolleyLog.e("Error: ", error.toString());
VolleyLog.e("Error: ", error.getLocalizedMessage());
}
};
Run Code Online (Sandbox Code Playgroud)
我发送给我的VolleyLog的2行打印如下:
03-12 10:57:56.932: E/Volley(7147): [1] 1.onErrorResponse: Error:
03-12 10:57:56.932: E/Volley(7147): [1] 1.onErrorResponse: Error:
Run Code Online (Sandbox Code Playgroud)
Volley确实知道回来的原因,因为我也能在VolleyLog中看到以下内容:
03-12 10:57:56.692: E/Volley(7147): [41854] BasicNetwork.performRequest: Unexpected response code 403 for https://*******/Employee/authenticate
03-12 10:57:56.897: E/Volley(7147): [41854] BasicNetwork.performRequest: Unexpected response code 403 for https://*******/Employee/authenticate
03-12 10:57:56.902: W/System.err(7147): com.android.volley.AuthFailureError
03-12 10:57:56.902: W/System.err(7147): at com.android.volley.toolbox.BasicNetwork.performRequest(BasicNetwork.java:143)
03-12 10:57:56.902: W/System.err(7147): at com.android.volley.NetworkDispatcher.run(NetworkDispatcher.java:105)
Run Code Online (Sandbox Code Playgroud)
所以基本上,我想要的是获得响应代码"403"(禁止).
Bla*_*elt 27
通过VolleyError:
error.networkResponse.statusCode
Run Code Online (Sandbox Code Playgroud)
看看源代码,我看到VolleyError有一个NetworkResponse
名为的公共最终成员networkResponse
,它持有statusCode
Http调用的成员.您应该检查NPE.
在这里你可以找到的源代码NetworkResponse
.
在这里你可以找到的源代码VolleyError