请求中的 HTTParty 整数 headers
HTTParty integer in request headers
我需要POST到一个API,这需要在调用"Timestamp"
的请求中有一个header,它的值必须是一个整数(当前时间从epoch 作为一个整数)。
我尝试使用 HTTParty
和 Net::HTTP
执行此操作,如下所示:
response = HTTParty.post(route, body: options[:body].to_json,headers: { 'Timestamp' => Time.now.to_i, 'Authorization' => "Bearer #{options[:token]}",'Content-Type' => 'application/json' })
# >> NoMethodError: undefined method `strip' for 1522273989:Integer
它在 header 值上调用 strip
,这会引发错误,因为您不能在整数上调用 strip
。
有谁知道如何在请求 header 中传递整数?
对整数调用.to_s
:
response = HTTParty.post(route, body: options[:body].to_json,headers: { 'Timestamp' => Time.now.to_i.to_s, 'Authorization' => "Bearer #{options[:token]}",'Content-Type' => 'application/json' })
您不能真正在 header 中发送整数 - 它是接收端的服务器,必须从请求中转换明文 header。
Header fields are colon-separated name-value pairs in clear-text
string format, terminated by a carriage return (CR) and line feed (LF)
character sequence.
List of HTTP header fields - Wikipedia
我需要POST到一个API,这需要在调用"Timestamp"
的请求中有一个header,它的值必须是一个整数(当前时间从epoch 作为一个整数)。
我尝试使用 HTTParty
和 Net::HTTP
执行此操作,如下所示:
response = HTTParty.post(route, body: options[:body].to_json,headers: { 'Timestamp' => Time.now.to_i, 'Authorization' => "Bearer #{options[:token]}",'Content-Type' => 'application/json' })
# >> NoMethodError: undefined method `strip' for 1522273989:Integer
它在 header 值上调用 strip
,这会引发错误,因为您不能在整数上调用 strip
。
有谁知道如何在请求 header 中传递整数?
对整数调用.to_s
:
response = HTTParty.post(route, body: options[:body].to_json,headers: { 'Timestamp' => Time.now.to_i.to_s, 'Authorization' => "Bearer #{options[:token]}",'Content-Type' => 'application/json' })
您不能真正在 header 中发送整数 - 它是接收端的服务器,必须从请求中转换明文 header。
Header fields are colon-separated name-value pairs in clear-text string format, terminated by a carriage return (CR) and line feed (LF) character sequence.
List of HTTP header fields - Wikipedia