【发布时间】:2015-12-18 13:00:12
【问题描述】:
我正在使用 Volley 向 http://api.weddingonclick.com/vendor/auths/ 发出 POST 请求
当我使用POSTMAN 时,响应很好
{
"msg": "OTP sent"
}
但是当我使用 Volley 发送请求时,我得到了 ServerError 我以前使用相同的代码,它工作正常。突然它开始给我这个错误。
我的代码:
StringRequest firstTimeStringRequest = new StringRequest(StringRequest.Method.POST,
"http://api.weddingonclick.com/vendor/auths/", new Response.Listener<String>() {
@Override
public void onResponse(String responseString) {
Snackbar.make(sendButton, responseString, Snackbar.LENGTH_LONG).show();
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Snackbar.make(sendButton, error.toString(), Snackbar.LENGTH_LONG).show();
}
}) {
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> params = new HashMap<>();
params.put("mobile", "1234567890");
params.put("action", "sign_in");
params.put("a_session", ""+41);
params.put("a_source", "VENDOR_APP");
return params;
}
};
firstTimeStringRequest.setRetryPolicy(new DefaultRetryPolicy(0, -1, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
Volley.newRequestQueue(this).add(firstTimeStringRequest);
为了调试,我创建了一个 requestbin 并从 POSTMAN 和我的应用程序发送了请求。我似乎找不到不同之处。
编辑:我错误地向 requestbin 发送了更多请求。请只考虑底部的第一个和第二个请求
这里是请求binhttp://requestb.in/13j4apk1?inspect
请帮忙
【问题讨论】:
-
服务器需要一个带有我的代码中提到的参数的 POST 请求。我认为这很明显。
-
请学习 HTTP 基础知识...服务器期望某种类型的内容(您发送一些没有任何类型的内容(json、二进制、纯文本等...)...不知道API 要求说不准
-
@Ishan:有更新吗?