gpt4 book ai didi

Ruby Mechanize Zlib::BufError

转载 作者:数据小太阳 更新时间:2023-10-29 07:12:50 24 4
gpt4 key购买 nike

不确定为什么我现在使用 Mechanize gem 时会收到此错误 - 使用它已经有一段时间了,没有任何问题。

我的脚本会随机停止并抛出以下错误:

/Users/username/.rvm/gems/ruby-1.9.3-p194/gems/mechanize-2.5.1/lib/mechanize/http/agent.rb:798:in `rescue in response_content_encoding': error handling content-encoding gzip: buffer error (Zlib::BufError) (Mechanize::Error)

有什么想法吗?

最佳答案

您访问的 URL 可能指向负载均衡器。该负载均衡器背后的主机之一配置错误,或者它的配置不同与其对等方不同,并且正在返回内容的 gzip 版本,而其他主机则没有。我过去见过这个问题。

我也看到过这样的情况,服务器它正在返回 gzipped 内容,但发送时未压缩。或者它可以发送压缩的,而不是 gzip 压缩的。组合很多。

解决方法是确保您的代码能够检测返回的内容是否已压缩。确保您也将代码的正确的可接受内容 HTTP header 发送到他们的服务器。您必须进行防御性编程并查看返回的实际内容,然后分支以进行正确的解压缩,然后将其传递给解析。

关于Ruby Mechanize Zlib::BufError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18243426/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com