HttpURLConnection getInputStream() возвращает пустой для определенного устройства

Я испытываю странное поведение при использовании HttpURLConnection getInputStream() на других устройствах. На всех устройствах, кроме "Alcatel", я получаю действительный входной поток только для устройств Alcatel, и я получаю другой (пустой) вид входного потока:

Все устройства, кроме Alcatel

Устройства Alcatel

Я делаю точно такой же звонок и получаю 200 для всех устройств.

Код довольно прост:

urlObj = new URL(url);
urlConnection = (HttpURLConnection)urlObj.openConnection();
urlConnection.setRequestMethod(method);
urlConnection.setDoInput(true);
urlConnection.setConnectTimeout(timeout);
urlConnection.setReadTimeout(timeout);
urlConnection.setDoOutput(true);
urlConnection.setFixedLengthStreamingMode(body.length);
urlConnection.setRequestProperty(HEADER_KEY_CONTENT_LENGTH, String.valueOf(body.length));
urlConnection.getOutputStream().write(body);

int responseCode = urlConnection.getResponseCode();
InputStream in = urlConnection.getInputStream();

Какие-либо предложения?

1 ответ

Пожалуйста, проверьте, нужна ли вам настройка прокси для alcatel. httpurlconnection может завершиться ошибкой без правильного прокси-шлюза.

Другие вопросы по тегам