在设备中的两个Web应用程序之间共享会话

时间:2013-02-28 22:13:23

标签: ruby-on-rails ruby ruby-on-rails-3 devise

我有多个应用程序。我希望能够使用cookie_store在它们之间共享会话。

申请表A:

before_filter :authenticate_from!

def authenticate_from!
    unless session['warden.user.user.key'].nil?
        @user=User.find_or_initialize_by_id(ky[1])
        sign_in @user
    end
end

它可以工作,但无法识别应用程序B会话。 我该怎么办?

1 个答案:

答案 0 :(得分:3)

这可以完成,但这两个应用程序都需要有一个公共子域,并且配置中的secret_token值必须相同。

例如,只要将Cookie分配给app1.example.com,您就可以app2.example.com.example.com

此选项存储在config/initializers/session_store.rbconfig/initializers/secret_token.rb

注意,请确保您的秘密令牌值与默认安装中的一样长且随机。不要只是简单方便。