我想用文本 param提供API请求,其中包含我目前在params[:brand][:tag_list]
中的信息,该信息似乎被保存为一个由逗号分隔的字符串。什么是提出API请求的正确方法?如何正确传递此参数?
控制器代码:从日志
current_user.tag(@brand, :with => params[:brand][:tag_list], :on => :tags)
url = "http://www.viralheat.com/api/sentiment/review.json"
@sentiment_response = url.to_uri.get(
:api_key => 'MY_KEY',
:text => :tag_list).deserialize #This is what I'm currently using and is wrong
响应代码:
<- (GET 49996946161 2204098100) http://www.viralheat.com:80/api/sentiment/review.json?api_key=MY_KEY&text=tag_list
-> (GET 49996946161 2204098100) 200 OK (62 bytes 3.09s)
问题是? – njzk2
:tag_list是哈希中的标签列表,即“猫”,“狗”,“鼠标”,因此回应应该是:http://www.viralheat.com:80/api/sentiment/review.json?api_key = MY_KEY&text = cat&dog&mouse – Simpleton
'http://www.viralheat.com/api/sentiment/review.json?api_key = MY_KEY&text = cat&dog&mouse'几乎肯定不是您的意思;这创建了对“文本=猫”,“狗”和“鼠标”,这是无意义的。此外,你不传递一个数组,你传递一个符号。 “:tag_list”由定义*不是散列*。你可能是指params [:brand] [:tag_list]之类的东西,但即使如此,目前还不清楚这个哈希应该如何转换为这个api的字符串。因为你说它应该形成的网址是不正确的。 –