首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Rest-client rails向post请求添加参数

使用Rest-client rails向post请求添加参数
EN

Stack Overflow用户
提问于 2015-11-25 00:33:22
回答 2查看 2.4K关注 0票数 0

我需要在rails后端使用Rest-Client发出一个Post请求。我可以通过以下方式成功做到这一点:rv = RestClient.post URL, id.to_json, :content_type => 'application/json'

我需要添加一个tag参数,但无法使其工作。我尝试了以下的不同组合:rv = RestClient.post URL, {:params => {:tag => 'TAG'}}, id.to_json, :content_type => 'application/json'和接收关于语法的错误(参数数量错误)。参数将出现在url上,id.to_json将成为正文的一部分。我找不到关于这个特定用例的文档。

EN

回答 2

Stack Overflow用户

发布于 2015-11-25 00:54:58

您可以使用to_query将哈希转换为HTTP查询字符串,如下所示:

代码语言:javascript
复制
url_params = {:tag => "TAG"}.to_query
=> "tag=TAG" 

然后用它来构造你的整个URL:

代码语言:javascript
复制
rv = RestClient.post "#{URL}?#{url_params}", id.to_json, :content_type => 'application/json'
票数 1
EN

Stack Overflow用户

发布于 2020-06-17 00:02:59

还有另一种方法可以将post参数添加到请求中,值得注意的是,您没有以正确的顺序(即url , payload, headers )将url参数发送到RestClient。并且标头可以包括任何其他标记,如:params

rv = RestClient.post(URL,id.to_json,{:params => {:tag => 'TAG'},:content_type =>‘=>/json’})

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33899000

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档