2011-05-15 120 views
6

因此,我正在制作一个也使用node.js实时功能的Rails应用程序。在节点应用程序上验证用户的最佳方式是什么,如果它们是在rails上用devise创建的?我一直在考虑将会话ID保存在数据库中,然后进行验证,或者在页面中显示用户ID,然后在连接时将其发送给节点应用程序。或者,也许别的东西完全是最好的。我为我的节点orm和mongoid使用猫鼬进行ruby。Rails,Node.js跨服务器身份验证

回答

3

在数据库中存储会话ID是一种有效的方法,我在我自己的应用程序中这样做。

+0

你知道一个简单的方法来获取节点中的会话ID吗?从轨道上加密了吗? – JRPete 2011-05-17 04:04:45

+0

@ user741072,如果两个应用程序(rails和node)都托管在同一个域中,则由一个应用程序创建的会话cookie将通过浏览传输到另一个应用程序。所有你需要知道的是cookie的名字。 – mikerobi 2011-05-18 00:22:02

+0

rails cookies被加密。如果您不想将会话ID存储在数据库中,则可能是使用与rails相同方式解密的好主意。还需要将Cookie密钥放入nodejs代码中。我想这样做,我也有一些节点代码的轨道 – CLod 2012-11-19 02:03:14