Чтение и завершение потока в HttpClient 4
-
18-09-2019 - |
Вопрос
Я читаю большие документы, из которых мне нужны только верхние 5%, могу ли я сделать следующее с HttpClient 4?
- Запросить страницу (получить или опубликовать)
- Прочитать ответ в виде потока
- Передайте это в HTML-парсер на основе SAX "на лету".
- При обнаружении определенного HTML-тега - завершите поток
Пожалуйста, обратите внимание , что HttpClient v.требуется 4 - я не могу использовать v.3
Решение
Благодаря Кену из списка рассылки HttpClient вот ответ
Используйте HttpEntity#getContent() метод, который возвращает
java.io.InputStream и передайте это в ваш синтаксический анализатор HTML на основе SAX.http://hc.apache.org/httpcomponents-client/tutorial/html/fundamentals.html#d4e122
Когда вы увидите нужный вам тег, завершите запрос, вызвав Метод HttpUriRequest#abort().
http://hc.apache.org/httpcomponents-client/tutorial/html/fundamentals.html#d4e285
Не связан с StackOverflow