socket io在命名空间中动态连接房间

时间:2017-08-08 15:39:02

标签: node.js socket.io

在Angular应用程序/ NodeJS应用程序中使用socket io。我需要根据客户端发送到服务器的会话对象使客户端加入会议室,问题是如果我在join中使用socket.on('event',function(){....})函数,则此处不会执行加入操作的示例:

io.of('/session').on('connection', function (socket) {

  socket.on('joinSession', function (room) {
      socket.join(room);
   });
  socket.on('message',function (data) 
  {
     socket.broadcast.to(data.room).emit('elementAdded', data.message);
   });
});

如果我直接指定房间,那么一切正常就是一个例子

io.of('/session').on('connection', function (socket) {
      socket.join("someStaticRoom");
  socket.on('message',function (data) 
  {
     socket.broadcast.to("someStaticRoom").emit('elementAdded', data.message);
   });
});

0 个答案:

没有答案