我有一个用 Rails 创建的站点,使用 Devise 进行身份验证。它在 Chrome 中运行良好,但在 Firefox 中我无法登录。我只能看到日志中的一条消息:WARNING: Can't verify CSRF token authenticity
并且登录屏幕返回时没有任何错误消息。
有人可以给我一个提示在哪里照顾正在发生的事情吗?
最佳答案
我遇到了完全相同的问题。登录在 Chrome 中工作,而不是在 FF 中工作。
问题与CSRF无关,因为我注释掉了protect_from_forgery
并尝试登录,但不允许我登录。唯一的区别是警告消息消失了。
经过一些调试,我发现问题与 session 和 :domain => :all session 存储的设置有关。
MyApp::Application.config.session_store :cookie_store, key: '_myapp_session', :domain => :all
我删除后
:domain => all
,我可以使用 Firefox 登录。希望这会帮助某人,即使答案迟到两个月。
关于ruby-on-rails - Firefox 中的 rails csrf 验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19132050/