Охтп 3: Обработка нескольких контент-кодировок в ответ - PullRequest
0 голосов
/ 05 апреля 2019

Когда контент запрашивается с сайта 24310.gr (например, http://24310.gr/afroditi-42426.html) с использованием заголовка HTTP Accept-Encoding: gzip, ответ сжимается с использованием кодировки gzip вместе с заголовком ответа Content-Encoding: zlib,gzip,deflate. Okhttp3 не распаковывает этот контенти обрабатывать его как ответ, отправленный с Content-Encoding: identity. Заголовок Content-Encoding может быть многозначным, но я правильно понимаю RFC , многозначное кодирование контента понимается как onion-аналогично применению нескольких кодеков сжатия.

Интересно, что упомянутый веб-сервер обрабатывает правильные ответы с другими значениями Accept-Encoding (например, identity) и отвечает с Content-Encoding: gzip, когда запрашивается Accept-Encoding: gzip, deflate, чтосделано многими другими клиентскими библиотеками HTTP, а также крупными браузерами (я проверял Firefox и Chromium). См. также NUTCH-2707 .

Я знаю, что могу справиться с кодировкой содержимого ввызывающего Java-кода путем явной установки заголовка Accept-Encoding в запросе okhttp. Кто-нибудь сталкивался с подобными проблемами?более простое решение?

...