我不确定这是可能的,但我真的需要这个功能。 我可以这样做:
客户端
sio = io.connect(url);
sio.to('room1').on('update', function(roomName) {
console.log(roomName);
});
每当更新事件发送到'room1'时会触发哪个?
服务器端:
sockets.to('room1').emit('update', 'room1');
答案 0 :(得分:2)
" easy"方法是确保您从服务器发出的内容包括有效负载中的房间。
sockets.to(room).emit('update', {room: room, message: 'hello world!'})
很可能你想在客户端做同样的事情。 这样从客户端发送到服务器的消息包括房间标识符,以便可以正确路由消息。
或者您实现名称空间。
答案 1 :(得分:1)
不幸的是,这在客户端不起作用。 但是你可以在服务器端做到这一点。
服务器设置:
sockets.on('connection', function (socket) {
socket.on('join', function (room) {
socket.join(room);
});
});
//...
sockets.to('room1').emit('update', 'room1');
客户端:
sio.emit('join', 'room1');
sio.on('update', function (room) {
console.log(room);
});