是否可以使用socket.io將消息發送到多個房間?使用Socket.io將消息發送到多個房間?
發送到1間:
io.sockets.in(room).emit("id", {})
發送到N室:
io.sockets.in(room1, room2, roomN).emit("id", {})
是否可以使用socket.io將消息發送到多個房間?使用Socket.io將消息發送到多個房間?
發送到1間:
io.sockets.in(room).emit("id", {})
發送到N室:
io.sockets.in(room1, room2, roomN).emit("id", {})
是的,它可以發射到多個房間。從the tests:
socket.on('emit', function(room){
sio.in('woot').in('test').emit('a');
sio.in('third').emit('b');
});
這是因爲當你使用to
或in
要追加的房間,房間的名單爲目標。從source code (lib/socket.js):
Socket.prototype.to =
Socket.prototype.in = function(name){
this._rooms = this._rooms || [];
if (!~this._rooms.indexOf(name)) this._rooms.push(name);
return this;
};
這是正確的答案(我不知道另一個是否正確)。 –
似乎'sockets.in(R1)。在(R2)'不0.9.16工作;( – fusio