如何在socket中访问会话(Node.js)

时间:2015-09-25 14:35:15

标签: node.js session socket.io

我正在使用express和socket.io开发随机聊天应用程序。现在我需要在socket事件中访问会话。

io.sockets.on('connection', function(socket){  
  socket.on('sendMessage',function(data){
   session.userId //senderId
 }); 
});

会话在请求对象中可用,但是有很容易的方法来访问套接字事件中的会话。我已经检查了这些问题,但答案非常复杂和陈旧。

  

How to share sessions with Socket.IO 1.x and Express 4.x?

     

socket.io and session?

     

How to get session id with Socket.IO?

如果有任何新的方法,请分享。

1 个答案:

答案 0 :(得分:1)

我发现了一个简单的方法..
如果你正在使用socket.io> = 1.0,这里是simple module

var ios = require('socket.io-express-session');
var io = require("socket.io")(server);
io.use(ios(Session));

然后

var sess = socket.handshake.session;
sess.userId

就这么简单。

参考session.socket.io