#java #android #android-volley
Вопрос:
Я использую библиотеку Android volley и пытаюсь отправить данные на сервер API, но он каждый раз реагирует на эту ошибку
E/Volley: [2342] NetworkUtility.shouldRetryException: Unexpected response code 400 for API
Это мой код:
JSONObject params = new JSONObject();
try {
params.put("deptcode", 649);
params.put("endDt", "2021-07-22T12:37:28.755Z");
params.put("instCode", 152);
params.put("instSesNO", 0);
params.put("locCode", 2);
params.put("observedBy", obserName);
params.put("sessionId", 0);
params.put("startDt", "2021-07-22T12:37:28.755Z");
params.put("status", "string");
}
catch (JSONException e) {
e.printStackTrace();
}
JsonObjectRequest jsonObjReq = new JsonObjectRequest(Request.Method.POST,
url, params,
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
Log.d("TAG", response.toString());
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
VolleyLog.d("TAG", "Error: " error.getMessage());
}
}) {
/**
* Passing some request headers
* */
@Override
public Map<String, String> getHeaders() throws AuthFailureError {
HashMap<String, String> headers = new HashMap<String, String>();
headers.put("Content-Type", "application/json; charset=utf-8");
return headers;
}
};
jsonObjReq.setRetryPolicy(new DefaultRetryPolicy(300000,
DefaultRetryPolicy.DEFAULT_MAX_RETRIES,
DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
MyRequestQueue.add(jsonObjReq);
Я перепробовал много способов, но все равно у меня ничего не получается. Пожалуйста, помогите мне.
Ответ №1:
обычно 400 — это ошибка сервера, которая не найдена на сервере.
1.попробуйте свой api на почтальоне и убедитесь, что он работает.
2 — иногда значения, которые мы передаем в int, могут быть разрешены путем преобразования их в строку.
3 — попробуйте получить сообщение об ошибке от error.getMessage()
. если не решено, пожалуйста, поделитесь своим api, я проверю.
Комментарии:
1. Спасибо, я нашел ошибку. Я передавал неправильный формат значения.
2. Поздравляю @AbdullahAlShibli, пожалуйста, не забудьте проголосовать, если это вам помогло. С уважением!