Подтвердить что ты не робот

Как я могу получить код ответа из VolleyError?

Я ищу способ получить код ответа брошенного 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());
    }
};

2 строки, которые я отправляю на мой VolleyLog, печатают следующее:

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: 

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)

Итак, в основном, я хочу получить этот код ответа "403" (Forbidden).

4b9b3361

Ответ 1

через VolleyError:

error.networkResponse.statusCode

глядя на исходный код, я увидел, что VolleyError имеет открытый конечный член NetworkResponse, называемый NetworkResponse, который содержит statusCode вызова Http. Вы должны проверить NPE.

Здесь вы можете найти исходный код для NetworkResponse.  Здесь вы можете найти исходный код для VolleyError