ruby-on-rails - Mechanize::ResponseReadError - Content-Length 与响应正文长度不匹配

标签 ruby-on-rails ruby ruby-on-rails-4 mechanize mechanize-ruby

我在使用 Mechanize 请求页面时遇到了这个错误:

Mechanize::ResponseReadError
Content-Length (17317) does not match response body length (17070) (Mechanize::ResponseReadError)

非常感谢任何关于为什么会发生这种情况以及我如何解决它的想法!

最佳答案

网站会返回错误的内容长度值。捕获错误并强制页面解析。

agent = Mechanize.new
begin
  page = agent.get 'http://bad.com'
rescue Mechanize::ResponseReadError => e
  page = e.force_parse
end

您还可以将 agent.ignore_bad_chunking 设置为 true — 但要注意可能的静默内容丢失。

关于ruby-on-rails - Mechanize::ResponseReadError - Content-Length 与响应正文长度不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23912159/

相关文章:

Ruby 可以像 c 调用函数那样调用方法或 proc 吗?

ruby-on-rails - 当我进行重定向时,出现错误 undefined method `empty?' for 15 :Fixnum

ruby-on-rails - 在Rails中使用单表继承进行轮胎搜索

Rails Bootstrap 中简单表单的 CSS 样式

ruby-on-rails - 多进程VS多线程服务器最受益于什么?

ruby-on-rails - 通过更改 ActionController::Base#page_cache_directory 在 Heroku 上使用 Jammit 进行静态 Assets 缓存

ruby - Ruby 1.8 的 Shellwords.shellescape 实现

ruby-on-rails - 如何在不更改代码的情况下将单站点应用程序变成可维护的多站点应用程序?

ruby-on-rails - 如何在页面上显示 acts_as_taggable 标签,Rails 中每个标签下面都有帖子?

ruby-on-rails - Rails — 迁移表(包含数据)以使用 UUID 而不是 ID