Печатать тело ответа, когда statusCode assert терпит неудачу с задержкой [дубликат]

Это происходит потому, что они компилируют свой код, я имею в виду, что они пишут код в java, и все остальные обрабатываются с помощью GWT того же самого о facebook, который они пишут с помощью C, а затем делают то же самое.

61
задан ROMANIA_engineer 22 January 2018 в 17:58
поделиться

2 ответа

Если код ответа не 200 или 2xx, используйте getErrorStream() вместо getInputStream().

95
ответ дан user207421 16 August 2018 в 03:26
поделиться
  • 1
    Большое спасибо, он отлично работает :) – kiedysktos 29 July 2014 в 12:26
  • 2
    в моем случае, имея код ответа 403, getErrorStream () возвращает null – Sip 10 April 2018 в 14:35

Чтобы сделать вещи кристально чистыми, вот мой рабочий код:

if (200 <= conn.getResponseCode() && conn.getResponseCode() <= 299) {
    br = new BufferedReader(new InputStreamReader(conn.getInputStream()));
} else {
    br = new BufferedReader(new InputStreamReader(conn.getErrorStream()));
}
40
ответ дан kiedysktos 16 August 2018 в 03:26
поделиться
  • 1
    HttpURLConnection.getErrorStream() (sun.net.www.protocol.http) возвращает null, если responseCode >= 400, поэтому ваша проверка на 299, вероятно, неверна. – vladr 16 March 2018 в 15:46
Другие вопросы по тегам:

Похожие вопросы: