1

通过 GAE 文档获取 Channel API,

一次只有一个客户端可以使用给定的客户端 ID 连接到通道,因此应用程序不能使用客户端 ID 进行扇出。换句话说,不可能为连接到多个客户端创建一个中央客户端 ID。

似乎与

将 create_channel() 返回的令牌视为机密。如果恶意应用程序获得了对令牌的访问权,它可能会侦听通过您正在使用的通道发送的消息。

他们怎么可能都是真的?但更重要的是,我计划为我的应用程序中的每个登录用户创建一个频道。现在,如果用户使用该应用打开一个新选项卡,我可以再次使用相同的令牌吗?为用户打开的每个标签创建一个频道的替代方案听起来很奇怪,更不用说昂贵了。

4

1 回答 1

4

如果您在一个通道上打开多个具有相同令牌的套接字,则结果是不确定的。两个套接字都可以接收消息,或者都不接收消息,或者只接收一个。(实际上我们在技术上可靠地支持两个连接,用于用户刷新页面的情况)

如果您想支持同一用户的多个连接(在不同的选项卡或不同的计算机或其他),您需要为每个选项卡/浏览器实例/计算机等创建一个客户端 ID。

于 2012-03-11T01:53:46.440 回答