2014-06-08 31 views

回答

0

我不知道你对房间有什么意义,但如果是聊天应用或类似的东西 你可以在第一次连接时在socket对象上创建一个变量。

io.sockets.on("connection",function(socket){ 
    socket.on("new:user",function(userDATA){ 
     // create variable as roomID on socket. 
     socket.roomID = userDATA.roomID 
    }); 

    // other events 

    socket.on("disconnect",function(data){ 
     var roomID = socket.roomID; 
     // do what you want to do 
    }); 
}); 
+0

这是行不通的。谢谢。 – Zander17

-1

随着socket.io 1.0你可以用下面的代码做到这一点:

socket.on('disconnect', function() { 
    console.log(socket.rooms); 
}); 

它将输出室的阵列,用户被加入到。

请注意,每个套接字都会自动加入以此套接字ID命名的房间。因此,您可能会在您的控制台中看到类似于

[ 'hIP6r4z8Ym1n5SQUAAAA', 'my_room_name' ]