I have a Json reponse like this:
{
"status" : "CREATED",
"message" : "user created",
"results" : [
{
"id" : "1243233",
}
]
}
The above JSON response will be obtained with a POST call.In android using volley library i did a REST call as following:
JsonObjectRequest jsonObjReq = new JsonObjectRequest(Request.Method.POST,
url, null,
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
Log.d("Request", response.toString());
try {
response.getString("status");
JSONArray array = response.getJSONArray("results");
JSONObject id = (JSONObject)array.get(0);
Toast.makeText(getApplicationContext(),response.getString("status"),Toast.LENGTH_LONG).show();
} catch (JSONException e) {
e.printStackTrace();
}
pDialog.hide();
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
VolleyLog.d("Request", "Error: " + error.getMessage());
pDialog.hide();
}
}){
@Override
public Map<String, String> getHeaders() throws AuthFailureError {
HashMap<String, String> headers = new HashMap<String, String>();
headers.put("Content-Type", "application/json");
return headers;
}
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> params = new HashMap<String, String>();
params.put("phone", phone);
params.put("name", username);
params.put("pwd",password);
params.put("email", email);
return params;
}
};
AppController.getInstance().addToRequestQueue(jsonObjReq);
I am getting an error org.json.JSONException: Expected literal value at character 102 of
{
"status" : "CREATED",
"message" : "user created",
"results" : [
{
"id" : "1243233",
}
]
}
Please help me to solve this.
"id" : "1243233",- you have to remove coma on the end of this line.