当使用HTTP标头Accept-Encoding: gzip
向网站24310.gr(例如http://24310.gr/afroditi-42426.html)请求内容时,将使用gzip编码和响应标头Content-Encoding: zlib,gzip,deflate
压缩响应。 Okhttp3不会解压缩此内容并将其视为通过Content-Encoding: identity
发送的响应。允许对Content-Encoding标头进行多值处理,但我正确理解RFC,将多值内容编码理解为多种压缩抄本的类似洋葱的应用。
有趣的是,提到的Web服务器句柄将其他Accept-Encoding
值(例如identity
)发送回适当的响应,并在请求Content-Encoding: gzip
时用Accept-Encoding: gzip, deflate
答复,这是由许多其他HTTP客户端库以及主要的浏览器(我已经检查了Firefox和Chromium)。参见其他NUTCH-2707。
我知道我可以通过在okhttp请求中显式设置Accept-Encoding
头来处理调用Java代码中的内容编码。有人遇到过类似的问题吗,有没有更简单的解决方案?