org.json.JSONException in volley

牧云@^-^@ 提交于 2019-12-11 17:24:14

问题


I am parsing json using volley but its not working and getting error. Follwing is my code and json reponse. please help me to solve this

 private void getStaffList() {

        showpDialog();
        RequestQueue requestQueue = Volley.newRequestQueue(this);
        final String url = "url";


        try {

            final JSONObject jsonObj = new JSONObject();


            jsonObj.put("username", "test");
            jsonObj.put("password", "123456");


            JsonObjectRequest jsonObjReq = new JsonObjectRequest(Request.Method.POST,
                    url, jsonObj, new Response.Listener<JSONObject>() {
                @Override
                public void onResponse(JSONObject response) {
                    Log.d("TAG", "Main response=" + response);


                    staffarraylist=new ArrayList<DataModel>();;
                    try {
                        JSONObject jobSuccess=response.getJSONObject("TABLE_DATA");
                        Log.d("TAG", "JSONObj response=" + jobSuccess);
                        JSONArray jarMyData=jobSuccess.getJSONArray("data");
                        Log.d("TAG", "JSONArray response=" + jarMyData);
                        for (int i = 0; i < jarMyData.length(); i++) {
                            JSONArray jar = jarMyData.getJSONArray(i);

                            DataModel movie = new DataModel();
                            movie.setName(jar.getString(0));
                            movie.setOccupation(jar.getString(1));
                            movie.setPlace(jar.getString(2));
                            movie.setId(jar.getString(3));
                            movie.setDate(jar.getString(4));
                            movie.setPrice(jar.getString(5));
                            staffarraylist.add(movie);
                        }
                    }catch (JSONException e)
                    {
                        Log.d("JSONException",e.toString());
                    }


                    rcAdapter = new RecyclerViewAdapterHome(MainActivity.this,  staffarraylist);
                    recyclerView.setAdapter(rcAdapter);

                    hidepDialog();

                }

            }, new Response.ErrorListener() {

                @Override
                public void onErrorResponse(VolleyError error) {
                    VolleyLog.d("TAG", "JSONObj Error: " + error.getMessage());
                    hidepDialog();
                    //Toast.makeText(getApplicationContext(), error.getMessage(), Toast.LENGTH_SHORT).show();
                    // hide the progress dialog
                }
            });

            requestQueue.add(jsonObjReq);

        } catch (JSONException e) {
            e.printStackTrace();
        }

    }

Logcat

Main response={"TABLE_DATA":"{\"data\":[[\"Tiger Nixon\",\"System Architect\",\"Edinburgh\",\"5421\",\"2011/04/25\",\"$320,800\"],[\"Garrett Winters\",\"Accountant\",....so on

D/JSONException: org.json.JSONException: Value {"data":[["Tiger Nixon","System Architect","Edinburgh","5421","2011/04/25","$320,800"],["Garrett Winters","Accountant","Tokyo","8422","2011/07/25","$


回答1:


First check that your json format is correct or not by clicking here and paste your json for checking. If the response is correct then use Gson. It will parse the response without any error.



来源:https://stackoverflow.com/questions/53458894/org-json-jsonexception-in-volley

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!