4

認証にDeviseを使用してRailsで作成したサイトがあります。Chrome では問題なく動作しますが、Firefox ではログインできません。ログにメッセージが表示さ WARNING: Can't verify CSRF token authenticity れるだけです。エラー メッセージが表示されずにログイン画面が表示されます。

誰かが何が起こっているのかをどこで確認するかのヒントを教えてもらえますか?

4

1 に答える 1

4

私はまったく同じ問題を抱えていました。ログインは FF ではなく Chrome で機能していました。コメントアウトしてサインインしようとしたが、許可されなかったので、問題は CSRF とは関係ありprotect_from_forgeryませんでした。唯一の違いは、警告メッセージが消えたことです。

いくつかのデバッグの後、問題がセッションと :domain => :all セッションストアの設定に関連していることがわかりました。

MyApp::Application.config.session_store :cookie_store, key: '_myapp_session', :domain => :all

を削除:domain => allしたら、Firefox を使用してログインできるようになりました。回答が2か月遅れても、これが誰かの助けになることを願っています.

于 2013-12-10T10:53:32.427 に答える