socket.io会话ID和快速会话

时间:2012-10-06 16:35:25

标签: node.js session express socket.io sessionid

我正在使用socket.io创建一个应用程序我的问题是,当用户在同一个浏览器中打开多个标签时,它将创建新的会话ID [socket.id]。如何在所有选项卡中携带相同的会话ID?

我在这些帖子danielbaulig中使用了快速会话等几篇帖子,但是这些帖子将如何帮助我在浏览器的所有标签中携带相同的socket.io会话ID?

以上提到的帖子已经过时了,你能解决这些问题吗?

谢谢..

3 个答案:

答案 0 :(得分:4)

你应该看看express.io,一个非常简单的express和socket.io微框架。它自动处理express和socket.io会话。

npm install express.io

在此处查看会话支持示例:

https://github.com/techpines/express.io/tree/master/examples#sessions

答案 1 :(得分:1)

回答我自己的问题;

下面的2个帖子帮我解决了这个问题。如果您遇到同样的问题,那么下面的链接可能会对您有所帮助。

https://gist.github.com/2640463

Manage multiple tabs (but same user) in socket.io

答案 2 :(得分:0)

您可以尝试使用此模块express-socket.io-session

它允许您在express和socket.io之间共享基于cookie的session数据(反之亦然)。

因此,即使每个选项卡套接字具有不同的ID,它们也将基于coookie共享会话数据,每个选项卡共享为同一HTTP代理。

适用于express> 4.0和socket.io> 1.0