jsonObjectRequest错误,总是以onErrorResponse方法结束

时间:2018-06-18 06:05:27

标签: java android json android-volley jsonobjectrequest

我有以下代码部分是jsonObjectRequest但事实证明它总是以onErrorReponseMethod而不是onResponse方法结束。

        String url = API.getDevices()+ id + "/events";
        JsonObjectRequest request = new JsonObjectRequest(Request.Method.GET, url, null, new Response.Listener<JSONObject>() {
            @Override
            public void onResponse(JSONObject response) {
                try {
                    processEvent(response, name, id);
                } catch (JSONException e) {
                    e.printStackTrace();
                }
            }
        }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
                Log.d("mytag", "Error de response");
                error.printStackTrace();
            }
        });

这里的事情看起来像招摇

enter image description here

我可能做错了什么?

我认为我可能需要执行字符串请求,因为我在logcat中收到以下错误:

 com.android.volley.ParseError: org.json.JSONException: Value id of type java.lang.String cannot be converted to JSONObject
 06-18 02:54:45.662 3222-3222/? W/System.err:     at com.android.volley.toolbox.JsonObjectRequest.parseNetworkResponse(JsonObjectRequest.java:73)
    at com.android.volley.NetworkDispatcher.run(NetworkDispatcher.java:123)
Caused by: org.json.JSONException: Value id of type java.lang.String cannot be converted to JSONObject

但是如果我发出字符串请求,我怎样才能获得&#39;事件&#39;和&#39; args&#39;我的回答?

1 个答案:

答案 0 :(得分:0)

JSON无效。使用https://jsoneditoronline.org/生成有效的JSON。