У меня есть проект, в котором у меня есть несколько URL, каждый из которых ведет к конечной точке.Я подключился к этим конечным точкам через почтовый запрос с JSON, в который мне нужно вставить параметр (например: «email»: «mail@etc.com»), чтобы получить токен, который я добавлю в телоследующий запрос конечной точки, к которой я хочу подключиться.
Я пытался использовать addRequestProperty () и setRequestProperty (), и я не могу понять, что не так.В журнале оказывается, что я получаю внутреннюю ошибку сервера (код 500) при попытке сделать http-запросы.
У меня есть конечная точка, в которую мне не нужно передавать какие-либо параметры, и она прекрасно работает, предоставляя список «вещей», каждый из которых имеет идентификатор в своем JSON-результате от конечной точки.Затем мне нужно взять каждый идентификатор, чтобы, когда я нажимал на «материал» из списка на экране, называлась другая конечная точка, предоставляющая мне результаты с деталями этого «материала» в другом действии - для этой конечной точки мне нужно было передать любуюitem Я нажимаю на его конкретный идентификатор, взятый из более раннего результата JSON.
частная статическая строка makeHttpRequestGetUser (URL-адрес URL) выдает IOException {
String jsonResponse = "";
if(url == null)
return jsonResponse;
HttpURLConnection urlConnection = null;
InputStream inputStream = null;
try {
urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setReadTimeout(10000);
urlConnection.setConnectTimeout(15000);
//urlConnection.setRequestProperty("Content-Type", "application/json");
urlConnection.addRequestProperty("email", "t1@gmail.com");
urlConnection.setRequestMethod("POST");
urlConnection.connect();
if(urlConnection.getResponseCode() == 200) {
inputStream = urlConnection.getInputStream();
jsonResponse = readFromStream(inputStream);
} else {
Log.e(TAG, "Error response code in GetUser request: " + urlConnection.getResponseCode());
}
} catch (IOException e) {
Log.e(TAG, "Problem retrieving the "stuff" JSON result.", e);
} finally {
if(urlConnection != null)
urlConnection.disconnect();
if(inputStream != null)
inputStream.close();
}
return jsonResponse;
}
частная статическая строка extractTokenFromJson (String spotJSON) {
if(TextUtils.isEmpty(spotJSON))
return null;
String tokenValue = "";
try {
JSONObject baseJsonResponse = new JSONObject(spotJSON);
JSONObject result = baseJsonResponse.getJSONObject("result");
tokenValue = result.getString("token");
} catch (JSONException e) {
Log.e(TAG, "Problem parsing the token", e);
}
return tokenValue;
}