Исключения из HttpURLConnection - PullRequest
0 голосов
/ 13 марта 2012

Я работаю против API, который отправляет обратно правильные коды состояния HTTP (401 не авторизован и т. Д.), Но это заставляет мой код (используя HttpURLConnection) выдавать IOException, когда я пытаюсь посмотреть код состояния.

Это проблема, потому что разные коды состояния http "код ошибки" означают разные вещи, но все они заключаются в исключение IOException, исходящее от HttpURLConnection.

Есть ли способ предотвратить выброс этих исключений HttpURLConnection? Мне лучше переупаковать HttpClient 4.1 и использовать его для моего клиента? Я знаю, что Google продвигает HttpURLConnection, вот что я использовал ... но эта проблема заставляет меня переосмыслить свое решение.

1 Ответ

1 голос
/ 13 марта 2012

Вы уверены, что это когда вы пытаетесь посмотреть на код состояния? документы говорят:

Если в ответе HTTP указано, что произошла ошибка, getInputStream () сгенерирует исключение IOException.

но это только для getInputStream. Вы по-прежнему сможете получить код состояния с помощью getResponseCode, если только у вас действительно нет какой-либо проблемы с вводом / выводом. Если это действительно проблема, вы можете опубликовать трассировку стека?

...