node.js上的socket.io-套接字保留空间不起作用

时间:2019-11-06 12:58:08

标签: node.js sockets socket.io

在nodejs上使用socket.io我试图根据某些用户行为来“改变”房间。要达到这个目的:

  1. 获取当前房间
  2. 离开房间
  3. 加入新房间

使用字符串常量作为房间名称,一切正常,但使用变量无效。没有错误显示,但插座没有离开房间。在上面的代码中,日志“ room before2”和“ room after”打印相同的列表,并且currentRoom等于socket.adapter.rooms键项

var newroom = "funnyroom" + room;   
//get the current from room list                                                                             
var currentRoom = getCurrentRomm(rooms);
logger.debug("room before " + Object.keys(socket.adapter.rooms));
socket.leave(currentRoom, function (err){
    logger.debug("error " + err);
    logger.debug("room after " + Object.keys(socket.adapter.rooms));
});
socket.join(newroom);

0 个答案:

没有答案