我试图在我的api通话中添加标题
这是我目前所尝试的内容
$all_user_recent_posts=mysql_query("select * from user_post where user_id=$userid and post_time >= DATE_SUB(NOW(),INTERVAL 1 HOUR);");
这是返回此错误
api1 = HTTParty.get(URI.encode('apiurllink' + tmname + '&date=' + fromdate + ' TO ' + todate + '', :headers => {"Authorization" => "Bearer apikey"})).parsed_response
我该如何解决这个问题?
答案 0 :(得分:3)
您尝试引发TypeError,因为您将:headers => {"Authorization" => "Bearer apikey"}
哈希传递给URI.encode
而不是HTTParty.get。
api1 = HTTParty.get(URI.encode('apiurllink' + tmname + '&date=' + fromdate + ' TO ' + todate + ''), :headers => {"Authorization" => "Bearer apikey"}).parsed_response
更好的方法是使用query
选项并获取HTTParty为您构建查询字符串。
response = HTTParty.get('/someuri',
query: {
date: "#{fromdate} TO #{todate}",
foo: "bar"
},
headers: {
"Authorization" => "Bearer apikey"
}
)