当前位置 : 主页 > 编程语言 > ruby >

ruby-on-rails – 使用设计注销时无效的真实性令牌

来源:互联网 收集:自由互联 发布时间:2021-06-23
我的用户可以在myapp.com上登录,并将其重定向到他们的子域,例如username.myapp.com 这是有效的,因为我有 Downhill::Application.config.session_store :cookie_store, :key = '_domain_session', :domain = :all 在session
我的用户可以在myapp.com上登录,并将其重定向到他们的子域,例如username.myapp.com

这是有效的,因为我有

Downhill::Application.config.session_store :cookie_store, :key => '_domain_session', :domain => :all

在session_store.rb&我的应用程序控制器中的一个方法,它根据用户名检查子域(因此您无法登录到其他用户的子域).

出于测试目的,username.myapp.com和myapp.com都会在登录后显示用户的数据.

问题是:当用户从username.myapp.com注销时,他们会得到

ActionController::InvalidAuthenticityToken in Devise::SessionsController#destroy

但是:当他们从myapp.com退出时,它就会退出.

有任何想法吗?

编辑

我已经覆盖了after_sign_out_path_for和after_sign_in_path_for

def after_sign_out_path_for(resource)
   root_url
 end

 def after_sign_in_path_for(resource)
   dashboard_url(:subdomain => current_user.subdomain)
 end
我认为您的应用程序布局中缺少此行

<%= csrf_meta_tags %>
网友评论