恢复Ruby中的文件下载,范围标题问题

时间:2012-09-17 18:00:36

标签: ruby http-headers

在Ruby 1.8.7中设置范围标题时,会添加一个额外的“X-REMOVED:Range”标题,这(看似)会阻止下载恢复工作。

size = File.size(local_file)
Net::HTTP.start(domain) do |http|
  headers = { 
    'Range' => "bytes=#{size}-"
  }
  resp = http.get(remote_file, headers)
  open(local_file, "wb") do |file|
    file.write(resp.body)
  end
end

发送标题:

GET /test.zip HTTP/1.1..Host: 192.168.50.1..Accept: */*..X-REMOVED: Range..Range: bytes=481-....

我也尝试过使用相同结果的set_range。

1 个答案:

答案 0 :(得分:2)

这很令人尴尬。恢复不起作用与范围标题无关。只是我用“wb”而不是“ab”打开文件。