Okhttp 3:响应中处理多种内容编码

时间:2019-04-05 14:55:33

标签: okhttp3 content-encoding

当使用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代码中的内容编码。有人遇到过类似的问题吗,有没有更简单的解决方案?

0 个答案:

没有答案