Rails:如何在多个子域之间共享永久性cookie?

Jam*_*mes 6 cookies ruby-on-rails ruby-on-rails-3

我的应用程序的注册和登录过程发生在安全的子域中.出于这个原因,我修改config/initializers/session_store.rb了一下

if Rails.env.production?
  AppName::Application.config.session_store :cookie_store, :key => '_app_name_session', :domain => '.app_name.com'
else
  AppName::Application.config.session_store :cookie_store, :key => '_app_name_session'
end
Run Code Online (Sandbox Code Playgroud)

这样就可以跨子域共享会话.

如何在子域之间共享永久性cookie,以便当我在一个子域上设置永久性cookie时cookies.permanent[:some_key] = 'some value',我可以通过另一个子域访问该cookie cookies[:some_key]

d11*_*wtq 4

您需要使用更详细的 cookie 设置方法来指定域:

cookies[:some_cookie] = {
  :value => "whatever",
  :domain => ".app_name.com",
  :expires => 1.year.from_now.utc
}
Run Code Online (Sandbox Code Playgroud)

我还没有找到全局执行此操作的配置设置。