Nob*_*ita 16 api url w3c ruby-on-rails
我正在使用API,希望我按以下格式执行请求:
?filter=value1&filter=value2
Run Code Online (Sandbox Code Playgroud)
但是,我正在使用Active Resource,当我指定:params hash时,我不能使相同的参数在URL中出现两次,我认为这是正确的.所以我不能这样做:
:params => {:consumer_id => self.id, :filter => "value1", :filter => "value2" },因为哈希的第二个过滤器索引将被忽略.
我知道我可以传递一个数组(我认为这是正确的方法),如下所示:
:params => {:consumer_id => self.id, :filter => ["value1","value2"] }
Run Code Online (Sandbox Code Playgroud)
这将生成如下URL:
?filter[]=value1&filter[]=value2
Run Code Online (Sandbox Code Playgroud)
对我来说似乎没问题,但API不接受它.所以我的问题是:
传递具有多个值的参数的正确方法是什么?它是语言特定的吗?谁决定这个?
http://guides.rubyonrails.org/action_controller_overview.html#hash-and-array-parameters
尝试:filter [] => value,:filter [] => value2
小智 5
要创建有效的查询字符串,您可以使用
params = {a: 1, b: [1,2]}.to_query
http://apidock.com/rails/Hash/to_query
http://apidock.com/rails/Hash/to_param
| 归档时间: |
|
| 查看次数: |
13961 次 |
| 最近记录: |