Ruby on rails 在rails 3和rails 4应用程序之间共享会话

Ruby on rails 在rails 3和rails 4应用程序之间共享会话,ruby-on-rails,ruby,ruby-on-rails-3,session,cookies,Ruby On Rails,Ruby,Ruby On Rails 3,Session,Cookies,我在stackoverflow上找到了一些链接,还有更多的外部链接,但它们对我没有帮助。目前我有两个应用程序:R3(在rails 3上)和R4(在rails 4上)。两者都使用cookie存储来存储会话 饼干店: # R4 MyApp::Application.config.session_store :cookie_store, key: '_app.com_session', :domain => ".app.com", tld_length: 2 我为以下对象粘贴了相同的键: #

我在stackoverflow上找到了一些链接,还有更多的外部链接,但它们对我没有帮助。目前我有两个应用程序:R3(在rails 3上)和R4(在rails 4上)。两者都使用cookie存储来存储会话

饼干店:

# R4
MyApp::Application.config.session_store :cookie_store, key: '_app.com_session', :domain => ".app.com", tld_length: 2
我为以下对象粘贴了相同的键:

# R4:
Devise.setup do |config|
  config.secret_key = 'SECRET'
end

# R3:
Devise.setup do |config|
  config.secret_key = 'SECRET'
end

我还更改了R4应用程序的cookie序列化:

# R4
Rails.application.config.action_dispatch.cookies_serializer = :marshal
但它不起作用

看起来Rails 4对cookie存储的方法已经改变,它们不兼容。有没有办法在两个应用程序R3和R4之间共享会话

更新:

目前,我已经有一批R3应用程序共享会话。这就是为什么我很难升级所有R3应用程序的原因。主要问题:让R3和R4都说同一种语言的最简单方法是什么


有没有办法降低R4 cookies处理算法的等级?我还考虑将所有会话存储在数据库中(在R4中似乎没有更改)。

rails 4对cookie进行加密,rails 3仅base64对其进行编码-有关更多信息,请参阅-您可能能够“升级”rails 3应用程序以使用rails 4 cookie加密?不幸的是,将所有R3应用程序升级到R4非常困难。我已经更新了这个问题。请看一看。请看这个帖子:谢谢!但我已经看过这篇文章了。他们还说简单的方法(unset secret\u key\u base和set secret\u token)不起作用。我认为切换到ActiveRecord存储将是最简单的解决方案。我很快就会试试的。无论如何,谢谢你的帮助!
# R4
Rails.application.config.action_dispatch.cookies_serializer = :marshal