#android-studio #web-services #httpurlconnection
Вопрос:
Когда я выполняю программу, она возвращает сообщение: «метод не поддерживает тело запроса: GET», в выходном потоке мне нужно отправить тело Json в веб-службу. Я отправляю JSON в теле на Postaman и получаю ответ
информация об общедоступном классе расширяет AsyncTask<Строка, Строка, Строка> {
@Override
protected String doInBackground(String... params) {
try {
// Creating amp; connection Connection with url and required Header.
URL url = new URL("http://");
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setRequestProperty("Content-Type", "application/json");
urlConnection.setRequestMethod("GET"); //POST or GET
urlConnection.connect();
// Create JSONObject Request
JSONObject jsonRequest = new JSONObject();
jsonRequest.put("CodigoInical", "1");
jsonRequest.put("CodigoFinal", "2");
OutputStream outputStream = urlConnection.getOutputStream();
DataOutputStream dataOutputStream = new DataOutputStream(outputStream);
dataOutputStream.writeBytes(jsonRequest.toString());
dataOutputStream.flush();
dataOutputStream.close();
int statusCode = urlConnection.getResponseCode();
// Connection success. Proceed to fetch the response.
if (statusCode == 200) {
InputStream it = new BufferedInputStream(urlConnection.getInputStream());
InputStreamReader read = new InputStreamReader(it);
BufferedReader buff = new BufferedReader(read);
StringBuilder dta = new StringBuilder();
String chunks;
while ((chunks = buff.readLine()) != null) {
dta.append(chunks);
}
String returndata = dta.toString();
return returndata;
} else {
//Handle else case
}
} catch (ProtocolException e) {
e.printStackTrace();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
}