Ruby on rails 如何在RubyonRails中限制基于参数的请求

Ruby on rails 如何在RubyonRails中限制基于参数的请求,ruby-on-rails,ruby,ruby-on-rails-4,Ruby On Rails,Ruby,Ruby On Rails 4,我想将我的API更新到v5(post/API/v5/registrations),但仍然希望支持v1、v2、v3、v4。在v5下,如果请求正文中缺少注册为[:secret_token]的参数,我不希望处理创建/更新请求 如何做到这一点? 无效的请求={:user=>{:name=>XYZ,:roll\u number=>1}} 有效请求:{:user=>{:name=>XYZ,:roll\u number=>1,:secret\u token=>“DSGASDFG34534”} 提前感谢您可以在

我想将我的API更新到v5(post/API/v5/registrations),但仍然希望支持v1、v2、v3、v4。在v5下,如果请求正文中缺少注册为[:secret_token]的参数,我不希望处理创建/更新请求

如何做到这一点? 无效的请求=
{:user=>{:name=>XYZ,:roll\u number=>1}}

有效请求:
{:user=>{:name=>XYZ,:roll\u number=>1,:secret\u token=>“DSGASDFG34534”}


提前感谢

您可以在
application\u controller.rb中添加以下代码

before_action :authorize!

private

def authorize!
 head :forbidden unless params[:secret_token].present?
end