This is the Post Request done using postman
The response I want to get is :
{
"result": "success",
"reason": {
"first_name": "aswath",
"last_name": "AsH",
"email": "selviragu09@gmail.com",
"phone": "\"8867336754\"",
"authy_id": "26829982",
"updated_at": "2016-09-27 06:38:07",
"created_at": "2016-09-27 06:38:07",
"id": "5012"
},
"sms": "token sent"
}
This is the Request I am trying to send :
JSONObject jsonBody = new JSONObject();
jsonBody.put("first_name", firstname);
jsonBody.put("last_name", lastName);
jsonBody.put("email", Email);
jsonBody.put("phone", number);
final String mRequestBody = jsonBody.toString();
StringRequest stringRequest = new StringRequest(Request.Method.POST, URL, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Log.i("VOLLEY", response);
Log.d("**********", "FETCHING IN VOLLEY REQ" + response.toString());
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Log.e("VOLLEY", error.toString());
}
}) {
@Override
public String getBodyContentType() {
return "application/json; charset=utf-8";
}
@Override
public byte[] getBody() throws AuthFailureError {
try {
return mRequestBody == null ? null : mRequestBody.getBytes("utf-8");
} catch (UnsupportedEncodingException uee) {
VolleyLog.wtf("Unsupported Encoding while trying to get the bytes of %s using %s", mRequestBody, "utf-8");
return null;
}
}
@Override
public Map<String, String> getHeaders() throws AuthFailureError
{
Map<String, String> headers = new HashMap<String, String>();
headers.put("Content-Type", "multipart/form-data");
return headers;
}
@Override
protected Response<String> parseNetworkResponse(NetworkResponse response) {
String responseString = "";
if (response != null) {
responseString = String.valueOf(response.statusCode);
// can get more details such as response.headers
}
return Response.success(responseString, HttpHeaderParser.parseCacheHeaders(response));
}
};
getRequestOtpPage().addToRequestQueue(stringRequest);
But when i post request it returns the error!
How to solve the problem?
Just try with below code this will use to send simple post data using volley, just replace URL and parameter data.
StringRequest stringRequest = new StringRequest(Request.Method.POST, REGISTER_URL,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Toast.makeText(MainActivity.this,response,Toast.LENGTH_LONG).show();
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(MainActivity.this,error.toString(),Toast.LENGTH_LONG).show();
}
}){
@Override
protected Map<String,String> getParams(){
Map<String,String> params = new HashMap<String, String>();
params.put(KEY_USERNAME,username);
params.put(KEY_PASSWORD,password);
params.put(KEY_EMAIL, email);
return params;
}
};
getRequestOtpPage().addToRequestQueue(stringRequest);
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.