1

我正在通过 curl 向我的本地 Web 服务器发送 json 请求

curl -H 'Content-Type: application/json' -d {"name":"Stanford University", "subdomain":"stanford"} http://localhost:3000/rest/v1/groups.json

但是在我的params中的rails应用程序中,我得到了

Parameters: {"name"=>"Stanford University", "subdomain"=>"stanford", "group"=>{"name"=>"Stanford University", "subdomain"=>"stanford"}}

该哈希组来自哪里,我如何控制它?

4

2 回答 2

1

进去看看config/initializers/wrap_parameters.rb。您可能已wrap_parameters启用 JSON 请求。

您可以在上述文件中禁用此选项

wrap_parameters false

推荐阅读: http ://api.rubyonrails.org/classes/ActionController/ParamsWrapper.html

于 2012-12-13T13:31:45.587 回答
0

您必须将其发送为 Json 格式

尝试关注

curl -H 'Content-Type: application/json' -d "{\"name\":\"Stanford University\", \"subdomain\":\"stanford\"}"

或者

hash = {"name":"Stanford University", "subdomain":"stanford"}
curl -H 'Content-Type: application/json' -d "#{hash.to_json}" http://localhost:3000/rest/v1/groups.json
于 2012-12-13T13:31:47.913 回答