设计基于路由的跳过认证

时间:2016-03-21 10:39:23

标签: ruby-on-rails devise

拥有devise_for:users使得Devise的所有Users控制器方法都经过身份验证。我想跳过一些方法,例如users#api, users#do_stuff,用于使用自编写的auth方法创建公共API。

我该怎么做?

更新。

skip_before_filter :authenticate_user!, only: [:api, :do_stuff]

仍然给了我{"error":"You need to sign in or sign up before continuing."}

2 个答案:

答案 0 :(得分:2)

试试这个 -

skip_before_filter :authenticate_user!, :only => [:api,:do_stuff]

答案 1 :(得分:0)

users_controller.rb内...添加以下行

before_action :authenticate_user!, :only => [:api, :do_stuff]

我假设你只想在users_controller中对这两个方法调用进行身份验证,而没有在application_controller中添加任何身份验证过滤器。