lostisland / faraday

Simple, but flexible HTTP client library, with support for multiple backends.

Home Page:https://lostisland.github.io/faraday

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Handling Zlib::BufError exceptions

brandonweiss opened this issue · comments

I'm intermittently seeing Zlib::BufError exceptions being raised when making requests. I'm not setting an Accept-Encoding header allowing compressed content, so presumably this is caused by a server responding with Content-Encoding regardless, and then Net::HTTP trying to decompress the response which is either malformed or not compressed the in the first place.

I'm not quite sure what to do about that? I don't really care about the response, what I'm after is the status code. I could make a HEAD request, but some servers will just a return a 405 because they don't support it.

Is there anything I can do about this other than switching to a different adapter?

Of course I would finally figure this out minutes after I ask the question. For posterity, setting the Accept-Encoding header to identity will stop Net::HTTP from automatically requesting and/or attempting to inflate a compressed response.

Accept-Encoding: identity