【发布时间】:2013-11-24 01:40:11
【问题描述】:
我使用 socket.io 打开一个从我的客户端到我的 node.js 服务器的套接字。我还使用io.sockets.clients().length 每 10 秒将连接用户的数量推送到所有客户端,这个值的问题是,它不检查同一用户是否打开了同一页面的多个选项卡。
有没有办法获取在 socket.io 中连接的唯一客户端列表?
【问题讨论】:
-
“不检查”是什么意思 - 它报告的打开连接数比您预期的多或少于您的预期?
-
这个值是正确的,它给了我所有打开的套接字,虽然我需要一个不同的值,而不是所有打开的套接字,我需要“所有连接的唯一客户端”。
-
你的意思是两个打开的标签在你的情况下共享同一个套接字? (铬?)
-
同一用户打开的两个选项卡是两个套接字,这很好。但我需要弄清楚有多少客户端唯一地连接到我的服务器。我不确定如何使用 socket.io 执行此操作,我是否只是在客户端生成一个值,然后通过连接发送到服务器? (该值将是“用户IP”+“浏览器”+“浏览器版本”+等的组合。)
-
您对客户的定义是什么?一个人?一台电脑?浏览器?
标签: socket.io