Nếu bạn nhận được phản hồi 404, bạn sẽ nhận được bất kỳ trình nghe lỗi nào bạn đã đặt. Bạn nhận được một đối tượng VolleyError trong trình nghe lỗi. Bạn có thể nhận được phản hồi mạng từ đối tượng này và sau đó là dữ liệu từ phần thân phản hồi. Nó được đưa ra như là một mảng char, do đó bạn cần phải chuyển đổi nó thành một cái gì đó khác cho mình.
Đoạn mã dưới đây là một yêu cầu đơn giản thực hiện điều đó, bạn sẽ cần phải đặt URL của riêng mình.
StringRequest request = new StringRequest(Request.Method.GET, "yourURL", new Response.Listener<String>() {
@Override
public void onResponse(String s) {
//Do whatever
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError volleyError) {
try {
String responseBody = new String(volleyError.networkResponse.data, "utf-8");
JSONObject jsonObject = new JSONObject(responseBody);
} catch (JSONException e) {
//Handle a malformed json response
} catch (UnsupportedEncodingException error){
}
}
}
);