【发布时间】:2013-09-11 02:13:14
【问题描述】:
有没有办法检查当前订阅某个发布功能的客户端数量?问题是我有不同的组,每个组都有自己独特的ghash。
当用户选择离开一个组并进入一个新组时,这个 ghash 会发生变化,并且订阅了 THE SAME 发布功能,尽管当然使用了不同的ghash。
所以我正在寻找一种方法来检查一次有多少客户端订阅了每个组/gash(在服务器端)。我整天都在摆弄this 之类的东西,但老实说它并没有那么好用。我也在监听套接字的“取消订阅”事件以及所有这些,但仍然......这都是地狱般的错误。
如果有人对我的整个代码感兴趣,你可以找到它here! (我发现它太长了,无法将其粘贴到我的帖子中。)
我真的希望有人可以提供帮助! :-)
干杯,P
编辑:或者换句话说:有没有办法计算当前连接到 sockjs websocket 的客户端数量,其中所有这些 websocket 都使用相同的参数调用?
================================================ ============================
编辑 2: 新版本:LINK
由于某种原因,这根本不起作用...没有插入,因为提供给订阅的 ghash 永远不等于任何实际的套接字订阅(--> 参见 lin 20: ghash is never equal to ghash2 )。我只是不明白这怎么可能?每次 Session ghash 更改时,都会调用整个订阅函数。这个 var 怎么可能永远不等于提交给实际套接字(提交)的参数? (它也总是一个 ghash,但总是另一个组的 ghash)。
我真的迷路了! :-(
【问题讨论】:
标签: javascript sockets meteor publish-subscribe