1

我有兴趣在我的 Rails 应用程序服务器旁边部署 Node.js。作为参考,我计划使用 socket.IO 创建一个聊天服务器,这样用户就可以在我的 Web 应用程序中聊天。

我当前的应用程序使用 Authlogic 对用户进行身份验证。我想确保只有一个用户不能阅读其他用户的消息,所以我需要以某种方式对用户会话进行身份验证。我的 Node.js 将可以访问我的数据库,并且我知道 Rails 可以将会话存储在数据库中,所以我想使用此功能来验证聊天用户。问题是,我不知道该怎么做。我什至不确定会话中存在哪些信息,也不知道如何使用这些信息来验证用户身份。

提前致谢!

4

1 回答 1

1

Rails 会话在其他语言中使用起来很棘手:它只是一个序列化的 ruby​​ 对象,几乎唯一的 marshal 格式的文档是 implementation/rubyspec。

但是 authlogic 实际上并没有在会话中存储任何内容:它有一个单独的 cookie(默认情况下为 user_credentials,假设您的模型是User)该 cookie 中的数据是"#{user.persistence_token}::#{user.id}",因此您应该能够从您的 js 代码中轻松验证这一点

于 2012-04-26T16:08:00.880 回答