Hi I am using volley as JSON Parsing. I am using POST method and sending parameters in post request. I am getting following error when parsing the data, I am getting following error. I want to use volley. I have tried with JsonArrayRequest but it does not allow to send parameters as JSONObject,which I am using in my code.
org.json.JSONArray cannot be converted to JSONObject
Request is like
{
    "city":"acd",
    "user_id":"82",
    "phone_number1":"1232131231",
    "my_type":"asf"
}
Response is like
[{
   "name":"dfdfd",
}]
Following is my code
 private void Search_Refer() {
        //initialize the progress dialog and show it
        progressDialog = new ProgressDialog(SearchReferNameActivity.this);
        progressDialog.setMessage("Please wait....");
        progressDialog.show();
        try {
            JSONObject jsonBody = new JSONObject();
            jsonBody.put("city", "acb");
            jsonBody.put("user_id", "82");
            jsonBody.put("phone_number1", "12332123231");
            jsonBody.put("my_type", "asf");
            JsonObjectRequest jsonOblect = new JsonObjectRequest(Request.Method.POST, Constants.BASE_URL1+"api/lab/search", jsonBody, new Response.Listener<JSONObject>() {
                @Override
                public void onResponse(JSONObject response) {
                    Toast.makeText(getApplicationContext(), response.toString(), Toast.LENGTH_LONG).show();
                    Log.e("Search EROOR", response.toString());
                    try {
                        JSONArray itemArray=new JSONArray(response);
                        dataModelArrayList = new ArrayList<>();
                        for (int i = 0; i < itemArray.length(); i++) {
                            SearchModel playerModel = new SearchModel();
                            JSONObject dataobj = itemArray.getJSONObject(i);
                            //playerModel.setProduct_name(dataobj.getString("name"));
                            playerModel.setRadiology_store_first_name(dataobj.getString("radiology_store_first_name"));
                            dataModelArrayList.add(playerModel);
                        }
                    } catch (JSONException e) {
                        e.printStackTrace();
                    }
                    progressDialog.dismiss();
                   /* Intent intent = new Intent(SearchReferNameActivity.this, SearchResult.class);
                    intent.putExtra("Search_result", dataModelArrayList);
                    startActivity(intent);*/
                }
            }, new Response.ErrorListener() {
                @Override
                public void onErrorResponse(VolleyError error) {
                     Toast.makeText(getApplicationContext(), "Response:  " + error.toString(), Toast.LENGTH_SHORT).show();
                    System.out.println("Search Eroor"+error.toString());
                    progressDialog.dismiss();
                }
            }){
                @Override
                public String getBodyContentType() {
                    return "application/json";
                }
                @Override
                public Map<String, String> getHeaders() throws AuthFailureError {
                    HashMap<String, String> headers = new HashMap<String, String>();
                    headers.put("Authorization", "Bearer "+deviceToken);
                    return headers;
                }
            };
            jsonOblect.setRetryPolicy(new DefaultRetryPolicy(
                    10000,
                    DefaultRetryPolicy.DEFAULT_MAX_RETRIES,
                    DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
            MyApplication.getInstance().addToRequestQueue(jsonOblect,"postrequest");
        } catch (JSONException e) {
            e.printStackTrace();
        }
        // Toast.makeText(getApplicationContext(), "done", Toast.LENGTH_LONG).show();
    }
 
     
     
    