Я новичок, когда дело доходит до использования API в приложении Android, но я пытаюсь использовать Volley для доступа к API для сбора геологических данных, и по какой-то причине он продолжает давать мне неожиданный ответ 400, как показано ниже :
E / Volley: [4123] BasicNetwork.performRequest: Неожиданный код ответа 400 для https://mrdata.usgs.gov/mrds/search-bbox.php
Ответ E / Rest: com.android.volley.ServerError
Я понимаю, что этот код ошибки обычно зарезервирован для синтаксических ошибок, но я ничего не могу найти. Ниже я вставил свой код:
private class MRData_Model extends Thread {
RequestQueue requestQueue;
JSONObject input;
JsonObjectRequest objectRequest;
public void run() {
requestQueue = Volley.newRequestQueue(context);
try{
//xmin, xmax, ymin, and ymax are all doubles
input = new JSONObject();
input.put("xmin", xmin);
input.put("ymin", ymin);
input.put("xmax", xmax);
input.put("ymax", ymax);
input.put("com", "CU");
input.put("f", "JSON");
}catch(Exception e){
Log.e("JSON Object Error", e.toString());
}
objectRequest = new JsonObjectRequest(Request.Method.GET,
url,
input,
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
Log.e("Rest Reponse", response.toString());
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Log.e("Rest Reponse", error.toString());
}
});
requestQueue.add(objectRequest);
}
}
и URL, который я использую:
url = "https://mrdata.usgs.gov/mrds/search-bbox.php";
Ниже также приведен скриншот документации для этого API:
Документация API MRData USGS для записей MRDS в географическом прямоугольнике
Это довольно непонятный API, и я не могу ничего найти о том, кто его использует, поэтому, если кто-нибудь сможет мне помочь, я буду очень признателен за это.