Socket.io如何检查客户端的cookie数据?

我正在构build一个待办事项列表应用程序,其中多个用户可以login到同一个列表并实时查看项目更新 – Google文档样式。 我正在使用NodeJS,Express,Socket.io进行即时更新, client-sessions NodeJS模块存储cookie以允许用户保持login状态。

我可以使用Express在页面上加载正确的项目,方法是在请求的客户端上使用Jade模板填充与Cookie关联的项目,方法是在req.session.user下创build一个包含用户详细信息的cookie。 然而,这只有当我有一个req来获取会话,如在app.get('/', function(req, res){});

但是,当我想通过socket.io直播编辑时,如何确保编辑的项目链接到正确的列表? 有什么办法确定套接字客户端在服务器上有什么Cookie?

我不想简单地在浏览器上存储一个带有客户端ID的variables,因为这样会容易受到攻击,并且不会利用客户端会话的内置encryption。

查看socket.io/docs/server-api

client.request将帮助您检索它们。

如果您查看客户端会话(client-sessions.js)的代码,则会导出解码函数。 session.decode({'cookieName':'name'},cookie_content);