1
我尝试向所有客户广播消息,但没有成功。向所有客户发送广播消息
带标记的行WORKS但仅限于一个客户端。
我已经尝试过这些选项: socket.emit socket.broadcast.emit
感谢
我尝试向所有客户广播消息,但没有成功。向所有客户发送广播消息
带标记的行WORKS但仅限于一个客户端。
我已经尝试过这些选项: socket.emit socket.broadcast.emit
感谢
您所呼叫的错对象的on
功能。您应该将socket
变量重命名为其他内容。最常见的是,人们使用io
。
io = require('socket.io').listen(server);
然后,你将需要调用emit
上sockets
发送给所有用户:
io.sockets.on('connection', function(socket) {
io.sockets.emit('message', data);
});
当然,send
是使用message
作为事件的emit
。所以,你可以用它代替你的回调中:
io.sockets.send(data);
在这两种情况下,你就必须做到以下几点在你的客户对这一事件作出反应:
socket.on('message', function (data) {
// Do things with data
});
注:socket.broadcast.emit
可以用将事件发送给除刚刚连接的用户以外的所有用户,作为socket
。