public static void getQuestionsListApi2(final String requestId, final String timestamp,
final ImageProcessingCallback.downloadQuestionsCallbacks callback,
final Context context) {
try {
String url = NetUrls.downloadQuestions;
final JSONObject jsonBody = new JSONObject();
jsonBody.put("requestId", requestId);
jsonBody.put("timestamp", timestamp);
final String mRequestBody = jsonBody.toString();
Log.i("params", String.valueOf(jsonBody));
Log.i("URL", url);
JsonObjectRequest request = new JsonObjectRequest(Request.Method.GET, url, **jsonBody**, new Response.Listener() {
@Override
public void onResponse(JSONObject jsonObject) {
Log.v("TAG", "Success " + jsonObject);
callback.downloadQuestionsCallbacksSuccess(jsonObject.toString());
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError volleyError) {
Log.v("TAG", "ERROR " + volleyError.toString());
}
});
request.setRetryPolicy(new DefaultRetryPolicy(
DefaultRetryPolicy.DEFAULT_TIMEOUT_MS * 0,
DefaultRetryPolicy.DEFAULT_MAX_RETRIES,
DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
RequestQueue queue = Volley.newRequestQueue(context);
queue.add(request);
} catch (JSONException e) {
e.printStackTrace();
}
}
request.setRetryPolicy(new DefaultRetryPolicy(
DefaultRetryPolicy.DEFAULT_TIMEOUT_MS * 0,
DefaultRetryPolicy.DEFAULT_MAX_RETRIES,
DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
RequestQueue queue = Volley.newRequestQueue(context);
queue.add(request);
Вот код, который я использую при отправке JSONRequest. с помощью метода GET я получаю ответ об ошибке 400 от сервера и сервер не принимает данные в форме URL. Я отправляю объект jsonBody в качестве параметра. Есть решение?
вот так, я хочу отправить запрос тела JSON в GET API. Пробовал это, но это не сработало: [code] public static void getQuestionsListApi2(final String requestId, final String timestamp, final ImageProcessingCallback.downloadQuestionsCallbacks callback, final Context context) {
try { String url = NetUrls.downloadQuestions;
final JSONObject jsonBody = new JSONObject(); jsonBody.put("requestId", requestId); jsonBody.put("timestamp", timestamp); final String mRequestBody = jsonBody.toString(); Log.i("params", String.valueOf(jsonBody)); Log.i("URL", url); JsonObjectRequest request = new JsonObjectRequest(Request.Method.GET, url, **jsonBody**, new Response.Listener() { @Override public void onResponse(JSONObject jsonObject) { Log.v("TAG", "Success " + jsonObject); callback.downloadQuestionsCallbacksSuccess(jsonObject.toString()); }
[/code] Вот код, который я использую при отправке JSONRequest. с помощью метода GET я получаю ответ об ошибке 400 от сервера [b]и сервер не принимает данные в форме URL[/b]. Я отправляю объект jsonBody в качестве параметра. Есть решение?