Socket.io 服务器无法广播到房间
Socket.io server can't broadcast to room
io.on("connection", function(socket){
...
socket.on("join", function(id){
socket.join(room);
socket.broadcast.to(room).emit("joined", ...);
...
});
...
});
socket.broadcast.to(room).emit("joined", ...);
没有任何效果
它不会向房间发出事件
我已经尝试使用:
socket.to(room).emit("joined", ...)
socket.in(room).emit("joined", ...)
io.sockets.in(room).emit("joined", ...);
io.to(room).emit("joined", ...);
io.in(room).emit("joined", ...);
我正在使用 socket.io 服务器 v1.3.7
有什么解决办法吗?
你应该能够通过向房间内的所有插座发射信号来获得你想要的东西。如果您需要排除当前加入的套接字,则在加入之前发出事件应该会给您带来所需的行为。
socket.join('roomName');
io.sockets.in('roomName').emit('joined', ...);
尝试
io.to(room).emit("joined", ...);
试试这个:
io.sockets['in'](socket.room).emit('joined',....
我在 github 上搜索过,但没人知道这个问题的根源..
大概是socket.io.
的系统问题
似乎乱用 socket.id
会带来不好的后果,最好避免!
io.on("connection", function(socket){
...
socket.on("join", function(id){
socket.join(room);
socket.broadcast.to(room).emit("joined", ...);
...
});
...
});
socket.broadcast.to(room).emit("joined", ...);
没有任何效果
它不会向房间发出事件
我已经尝试使用:
socket.to(room).emit("joined", ...)
socket.in(room).emit("joined", ...)
io.sockets.in(room).emit("joined", ...);
io.to(room).emit("joined", ...);
io.in(room).emit("joined", ...);
我正在使用 socket.io 服务器 v1.3.7
有什么解决办法吗?
你应该能够通过向房间内的所有插座发射信号来获得你想要的东西。如果您需要排除当前加入的套接字,则在加入之前发出事件应该会给您带来所需的行为。
socket.join('roomName');
io.sockets.in('roomName').emit('joined', ...);
尝试
io.to(room).emit("joined", ...);
试试这个:
io.sockets['in'](socket.room).emit('joined',....
我在 github 上搜索过,但没人知道这个问题的根源..
大概是socket.io.
似乎乱用 socket.id
会带来不好的后果,最好避免!