Ruby on rails 在Rails和节点之间共享会话数据?

Ruby on rails 在Rails和节点之间共享会话数据?,ruby-on-rails,node.js,Ruby On Rails,Node.js,主要问题是:我可以在节点中读取Rails会话数据吗 更多详情: 我有一个用RubyonRails编写的项目。它可以工作,但我想添加到它,并最终使用NodeJS替换它。两者都运行在同一台服务器上,只是在不同的端口上 到目前为止,RoR将提供所有HTML文件(并继续处理现有功能),然后我将通过AJAX连接到节点服务器。Node将暂时抛出JSON 问题是,如何处理两者之间的会话变量?更具体地说,我可以访问节点中的RoRs会话变量吗?大多数情况下,我只需要知道哪个用户登录 如果有必要的话,我正在运行Ra

主要问题是:我可以在节点中读取Rails会话数据吗

更多详情:

我有一个用RubyonRails编写的项目。它可以工作,但我想添加到它,并最终使用NodeJS替换它。两者都运行在同一台服务器上,只是在不同的端口上

到目前为止,RoR将提供所有HTML文件(并继续处理现有功能),然后我将通过AJAX连接到节点服务器。Node将暂时抛出JSON

问题是,如何处理两者之间的会话变量?更具体地说,我可以访问节点中的RoRs会话变量吗?大多数情况下,我只需要知道哪个用户登录


如果有必要的话,我正在运行Rails 2.3.5、Ruby 1.8.7和Node 0.8.17。

我自己也没有尝试过完全相同的东西,但是,我们做了一些类似的事情,只是使用了Sinatra和Java

我不会评论您的应用程序设计方法,但是,如果您不介意在rails应用程序中使用Memcached会话存储,是的,这是可能的。有关使用Ruby应用程序配置Memcached的说明,请参见

在节点应用程序中,您可以像使用Memcached客户端一样从memcache访问会话变量


您必须显式地将rails生成的会话id传递给节点。

所以基本上只需将会话变量存储在DB中,然后在RoR和节点之间传递会话id?我理解正确吗?我想我应该问,如果RoRs对用户进行身份验证,是否有更好的方法来确保节点与该用户一起工作?不需要在DB中存储会话id。我说过使用Memcached作为会话存储。用户的会话id将在rails应用程序中可用,您可以在发出Ajax请求时将其作为查询参数传递给节点,对吗?我无法对身份验证位发表评论。^这是一种糟糕的做法,因为这样一来,任何具有会话id的人都可以假装是他们偷了它的用户。是的,但如果有人“偷”了它,那么他们无论如何都可以使用它。休息并不重要。