【发布时间】:2019-05-31 17:41:43
【问题描述】:
我使用此代码向服务器发出请求,它通常可以正常工作,但有时会抛出一些错误,因为它正在开发中,但是如果它抛出错误,volley 会尝试将其解析为 JsonObject 并且不可避免地会失败。
final JsonObjectRequest jsonObjectRequest = new JsonObjectRequest
(Request.Method.POST, baseUrl, postparams, new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
Log.w("Response", response.toString());
callBackActivity.JsonCallback(response, "grupos");
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
callBackActivity.ErrorCallback(error, "grupos");
}
});
那么在将其解析为 JsonObject 之前,有什么方法可以知道服务器的原始响应是什么?
【问题讨论】:
-
您可以切换到 Retrofit 并使用
HttpLoggingInterceptorlibrary 这将记录每个请求和响应、它们的时间和标头。或者如果 Volley 也使用OkHttp(IDK),则无需切换任何内容,只需将其添加到OkHttp。 -
会检查一下,感谢您的建议。
-
发生错误时您将什么 http 响应发送回 android 客户端? volley 的错误监听器应该在任何类型的错误时被调用。
标签: android http-post android-volley