作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
在我能够写出这样的东西之前:
io.sockets.clients().forEach(function (socket) {
socket.emit(signal,data);
});
现在,我不能,我收到错误 Object #<Namespace> has no method 'clients'
还有其他方法吗?这是套接字 v1.0。 (或者我认为是 1.0.2)。
为此我知道我可以使用 io.emit()
,但我想遍历套接字并在计时器中对它们执行功能。我可以将所有内容重构为回调并将计时器设置为 io.on()
, 但我认为我需要能够使用引用(我认为在这种情况下 javascript 会复制对象 socket
而不是引用它?)
举个例子
setInterval(function(){
io.sockets.clients().forEach(function (socket) {
socket.emit('newMessage',someCalculations());
});
},1000);
最佳答案
如果有关所有已连接套接字的信息必须发送到单个套接字,则
for (var i in io.sockets.connected) {
var s = io.sockets.connected[i];
if (socket.id === s.id) {
continue;
}
socket.emit('notify_user_state', s.notify_user_state_data)
}
关于javascript - 遍历 socket.io v1 中的套接字? "...has no method ' 客户的”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23944629/
我是一名优秀的程序员,十分优秀!