关于node.js:如何在socket.io连接中访问会话对象

How to access session object in socket.io connection

本问题已经有最佳答案,请猛点这里访问。

我正在使用express-session,并在登录页面上设置了会话对象。一切正常。我的socket.io连接只有在进入站点之后才被启动和使用。阅读socket.io文档时,它提到您可以访问启动套接字连接的request对象。这似乎与express-session对象viz不同:

1
2
3
io.on("connection", function (socket) {
    console.log(socket.request.session)
});

输出undefined。有一个request对象,即console.log(socket.request)输出[object Object]

是否可以通过socket.io连接访问express-session会话对象(在建立套接字连接之前的上一页中设置)?


您可以尝试使用express-socket.io-session,该参考资料提供了有关如何从express-session共享会话的信息。