我在rails api上有一个ruby,我希望通过在请求中附加所有传入参数的散列版本来签署我的请求数据,并在服务器端重建这个,以验证请求的完整性。< / p>
当我在控制器中使用params
方法时,我有不同的参数(例如,对于update
- 方法,由此指定:
put 'login' => 'login#update'
我在服务器上获取参数:
{"timestamp"=>"1399562324118", "secured"=>"xxx",
"login"=>{"timestamp"=>"1399562324118", "secured"=>"xxx"}}
虽然我只用
从客户端发送请求{"timestamp"=>"1399562324118", "secured"=>"xxx"}
是否有人知道如何以通用方式摆脱参数列表中的"login"
参数?我不想为我的api的每一个请求排除这个。
非常感谢!
答案 0 :(得分:1)
根据ActionController上的Rails Edge指南:
“如果您在初始化程序中打开了config.wrap_parameters或在控制器中调用了wrap_parameters,则可以安全地省略JSON参数中的根元素”
请参阅http://guides.rubyonrails.org/action_controller_overview.html#json-parameters