正在检索io.socket中的所有套接字对象
Retrieving all socket objects in io.socket
我希望从io.sockets
中取出所有单独的套接字对象,并对每个对象进行迭代。
类似于:
for (socket in io.sockets.something()) {
// do something with each socket
}
要么我做错了,要么我一定错过了什么。想法?
官方方法是:
io.sockets.clients().forEach(function (socket) { .. });
或按房间过滤:
io.sockets.clients('roomname') .. same as above ..
这比上面的建议要好,因为socket.io的内部数据结构可能总是会发生变化,并可能在未来的更新中破坏您的所有代码。当你使用这种official
方法时,你的风险要小得多。
这可能是也可能不是"文档化的",但有效:
for (var id in io.sockets.sockets) {
var s = io.sockets.sockets[id];
if (!s.disconnected) {
// ...
// for example, s.emit('event', { ... });
}
}
使用io.sockets.clients()
:
io.sockets.clients().forEach(function(s) {
// ...
// for example, s.emit('event', { ... });
});
您可以使用优秀的节点检查器连接到您的应用程序并检查s
的内容。
获取所有没有空间的插座:
for (let s of io.of('/').sockets) {
let socket = s[1];
socket.emit(...);}
相关文章:
- 如何使用HTML5与UDP套接字通信
- 在node.js中写入ECONNRESET错误和套接字连接检查
- java,javascript签名的小程序(文件选择,ftp上传)安全性/套接字异常
- Will my'新对象'在套接字断开连接时被垃圾收集
- 使用rxjs创建一个可观察的对象,该对象稍后将连接到web套接字
- 在node.js/ssocket.io中,如何判断对象是否是套接字的实例
- 从服务器端将属性绑定到套接字对象;似乎不能正常工作
- 我们是否可以安全地从套接字参数的回调中分配对象引用
- Web 套接字 DOM 对象检测
- 类型错误:对象 #<套接字> 没有方法“设置”
- 我在node.js中收到一条消息,对象套接字未定义
- 将套接字存储为键会产生不正确的值Javascript对象.里面的例子
- React Flux没有显示套接字中的对象数组
- 在套接字.在回调时获取套接字对象中的监听器名称
- 套接字.io -是发送对象必须的JSON
- 正在检索io.socket中的所有套接字对象
- 套接字IO的单个对象
- 如何在socket.io中为套接字对象定义一个新函数
- JS日期对象通过套接字转换为字符串
- 使用套接字.面向对象环境中的IO