我使用的是默认的Cookie基于会话存储。基本上,我使用Heroku的,我需要从我的应用程序去: http://test1.myapp.com 到Heroku的一个页面: http://myapp.heroku.com/billing - 所以我需要时,我去了Heroku的URL访问会话。我想访问会话[:USER_ID] Heroku的页面上,但如果是去产生一个新的会话Heroku的页面。

我想我可以通过在查询字符串的主URL的SESSION_ID,但我不知道如何从Heroku的URL页面访问它。

我尝试这样:

session[params[:sid]][:user_id]  

但它不工作。是否有可能,如果你知道会话ID来访问会话信息?还是有另一种方法来读取从另一个URL的会话信息(但都在同一个Rails应用程序)?

感谢。

有帮助吗?

解决方案

为了对于工作,你将需要建立在你的Heroku域,以便Heroku的应用程序是相同的TLD作为主要的应用程序下运行。要做到这一点,您的域名添加到您的帐单的应用,像这样:

$ heroku domains:add billing.myapp.com

请务必遵循 Heroku的说明设置您的DNS。

您的计费应用程序会再住在 http://billing.myapp.com/billing (上Heroku的)。这样的控制器应能访问相同的会话和饼干。

一定要设置会话域环境中在这两个应用/ production.rb:

config.action_controller.session = { :domain => ".myapp.com" }

我还要提到的是,你可能会考虑使用某种共享的验证或应用程序之间的令牌认证,因为饼干可能会被黑客攻击或以其他方式损害。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top