有没有在 Express 3.0 中使用 Socket.io session 的好方法?一种以安全方式获取客户 session ID 的方法?这样我就可以向成员发送特定于他们帐户的通知,并在成员之间进行私有(private)聊天?
我在 Express 3.0 中使用 MySQL 存储
最佳答案
我写了一个小模块来抽象它,下面是它的用法。它是使用 express 3、socket.io 0.9.10 和来自 connect 2.4.5 的(默认)MemoryStore 编写和测试的。它应该可以与其他兼容的商店一起正常工作。
var SessionSockets = require('session.socket.io')
, sessionSockets = new SessionSockets(io, sessionStore, cookieParser);
sessionSockets.on('connection', function (err, socket, session) {
//your regular socket.io code goes here
});
有关其工作原理的更多详细信息,请参阅 https://github.com/wcamarao/session.socket.io
您可能需要注意 README 中说明如何将其与您自己的 session 存储 key 一起使用的部分(我假设您的 mysql 存储使用的名称不是默认的“connect.sid”)。
关于javascript - Socket.io Express 3 节课,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10790442/