Я пытаюсь использовать Apache HtppClient для выполнения HTTP GET и чтения ответа. Моя текущая работа выглядит следующим образомВыполнение HTTP GET с Apache HttpClient v.4
def listAlertsUrl = "http://example.com/whatever"
HttpGet listAlertsRequest = new HttpGet(listAlertsUrl)
HttpResponse response = httpClient.execute(listAlertsRequest)
HttpEntity entity = response.entity
EntityUtils.consume(entity)
// newReader() is a method that Groovy adds to InputStream
Reader jsonResponse = entity.content.newReader()
try {
// do stuff with the Reader
} finally {
jsonResponse.close()
}
Однако, когда я пытаюсь использовать Reader
я получаю ошибку:
Caused by: java.io.IOException: Attempted read from closed stream.
Я изо всех сил, чтобы найти примеры того, как использовать HTTPClient v.4, потому что мои поисковые запросы Google возвращают только примеры версий olderr, которые имеют совершенно разные API.
Вы смотрели на их JUnit тестов: https://github.com/apache/httpclient/tree/trunk/httpclient/src/test/java/ org/apache/http/client/методы? –
Почему вы потребляете сущность? – njzk2
@ BorisPavlović Я не вижу в этих тестах соответствующих примеров, но спасибо в любом случае –