加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 使用Ruby Curb传递GET参数

发布时间:2020-12-17 04:04:28 所属栏目:百科 来源:网络整理
导读:我正在尝试使用Curb(curb. rubyforge.org)来调用需要在get请求中提供的参数的RESTful API. 我想获取像http://foo.com/bar.xml?bla=blablabla这样的网址.我希望能够做类似的事情 Curl::Easy.perform("http://foo.com/bar.xml",:bla = 'blablabla') {|curl| cu
我正在尝试使用Curb(curb. rubyforge.org)来调用需要在get请求中提供的参数的RESTful API.

我想获取像http://foo.com/bar.xml?bla=blablabla这样的网址.我希望能够做类似的事情

Curl::Easy.perform("http://foo.com/bar.xml",:bla => 'blablabla') {|curl|
    curl.set_some_headers_if_necessary
}

但到目前为止,我能看到的唯一方法是在URL中手动包含?bla = blablabla并自己进行编码.当然有一种正确的方法可以做到这一点,但我无法弄清楚阅读文档.

解决方法

如果你不介意使用ActiveSupport’?> 3.0′,有一个简单的解决方法 – to_query方法,它将哈希值转换为准备在URL中使用的查询字符串.

# active_support cherry-pick
require 'active_support/core_ext/object/to_query'

params = { :bla => 'blablabla' }

Curl::Easy.perform("http://foo.com/bar.xml?" + params.to_query) {|curl|
    curl.set_some_headers_if_necessary
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读