我正在使用 Devise 通过标准实现对用户进行身份验证。一旦用户登录,他/她就可以调用使用相同控制器的 REST API(因此也可以使用 Devise)。控制器如下所示:
class FriendController < ApplicationController
before_filter :authenticate_user!
def create
...
end
def destroy
...
end
def index
...
end
end
我得到了 index 操作来使用 authenticated_user!。在这种情况下,如果用户通过了身份验证,index 将返回带有 200 状态码的数据。如果用户未通过身份验证,则index
返回Unauthorized
40x 状态代码。
但是,当我调用create
或destroy
通过 POST 和 DELETE 调用时,它会自动将我从应用程序中注销并返回 40x Unauthorized 错误。有人见过这个吗?有任何想法吗?
这是路线.rb
resources :users do
resources :friends, only: [:index, :friended_me, :create, :destroy]
end
例如,这是否需要在devise_scope :users
块内?