有没有办法知道凌空将解析什么?

时间:2019-05-31 17:41:43

标签: android http-post android-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之前,有什么方法可以知道服务器的原始响应吗?

1 个答案:

答案 0 :(得分:0)

尝试使用JSONObjecRequest而不是StringRequest,它会以字符串形式给出响应。记录此响应并查看导致错误的原因,然后可以将其恢复为JSONObjectRequest

StringRequest stringRequest = new StringRequest(Request.Method.GET, url,
            new Response.Listener<String>() {
    @Override
    public void onResponse(String response) {
        //Log the response
    }
}, new Response.ErrorListener() {
    @Override
    public void onErrorResponse(VolleyError error) {
        //error log
    }
});