0
我試圖用Volley
使POST請求我的應用程序,但它說的Android排球帶給我400錯誤代碼(錯誤請求)
E/Volley﹕ [9988] BasicNetwork.performRequest: Unexpected response code 400 for http://test_url/SendMessage
但它完美地PostMan
工作。郵差的
快照:
這裏是我的代碼:
public JSONObject getJsonObject() {
Map<String, Object> postParam = new HashMap<>();
postParam.put("Recipients", new String[]{authorId + ":I"});
postParam.put("Subject", etSubject.getText().toString());
postParam.put("Text", etMessage.getText().toString());
postParam.put("MessageState", "N");
postParam.put("ParentId", "");
postParam.put("PrivateMessageGuid", GUID);
Log.i("JSON Parameter ===", Utils.getRequestJSONObject(postParam).toString());
return Utils.getRequestJSONObject(postParam);
}
JSON參數==={"PrivateMessageGuid":"ac74df70-77d8-4281-a723-5c3c65f4d212", "Text":"hello test", "MessageState":"N","Subject":"Re: Hello Sundar","Recipients":["311:I"],"ParentId":""}
主代碼:
JsonObjectRequest jsonReq = new JsonObjectRequest(Request.Method.POST,
Constants.ReplyMessageUrl, getJsonObject(),
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
Toast.makeText(getApplicationContext(),
"Message Send", Toast.LENGTH_SHORT).show();
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(getApplicationContext(),
getResources().getString(R.string.try_again), Toast.LENGTH_SHORT).show();
}
}) {
@Override
public Map<String, String> getHeaders() throws AuthFailureError {
HashMap<String, String> headers = new HashMap<>();
headers.put("Authorization", mApp.getTokenType() + " " + mApp.getAccessToken());
headers.put("Content-Type", "application/json");
headers.put("Accept", "application/json");
return headers;
}
};
RequestQueue mRequestQueue = mApp.getRequestQueue();
mRequestQueue.add(jsonReq);
請幫助我獲得解決方案。謝謝。
似乎重複http://stackoverflow.com/questions/21739276/android-volley-gives-me-400-error – random
@random我看到問題 –
@Viks你有沒有得到任何解決方案也變得相同 – Mohan