標準実装を介してユーザーを認証するためにDeviseを使用しています。ユーザーがログインすると、同じコントローラー (および Devise) を使用する REST API を呼び出すことができます。コントローラーは次のようになります。
class FriendController < ApplicationController
before_filter :authenticate_user!
def create
...
end
def destroy
...
end
def index
...
end
end
authenticated_user! で動作する index アクションを取得しました。この場合、ユーザーが認証されると、index は 200 ステータス コードのデータを返します。ユーザーが認証されていない場合は、40x ステータス コードをindex
返します。Unauthorized
ただし、呼び出し中create
、またはdestroy
POST および DELETE を使用すると、アプリケーションから自動的にログアウトされ、40x Unauthorized エラーが返されます。これを前に見た人はいますか?何か案は?
これがroute.rbです
resources :users do
resources :friends, only: [:index, :friended_me, :create, :destroy]
end
たとえば、これはdevise_scope :users
ブロック内にある必要がありますか?