设置 headers 时 HTTParty 请求失败

HTTParty request failing when setting headers

我正在尝试将视频上传到 Vimeo。如果我将 headers 留空并且只传递授权令牌,它就可以正常工作。当我设置内容长度 header 时,请求失败。关于如何正确创建请求的任何想法 header?

我创建的用于添加 headers 的方法:

 def add_header(key, value)
   @headers[key.to_sym] = value
 end

我添加的方式 content-type header:

add_header('content-type','video/mp4')

当我注释掉这一行时,请求工作正常,但它是 Vimeo 所要求的。调试的时候发现has to HTTParty是这样构成的,会不会是这个错误导致的:

{:headers=>{:authorization=>"Bearer xxxxx", :"Content-Type"=>"video/mp4", :"Content-Length"=>"54047"}

对 headers 键使用字符串而不是符号。在 add_header 方法

中移除 .to_sym
def add_header(key, value)
  @headers[key] = value
end