Javascript 如何在Angular.js服务中正确包装GAE通道API,并将更新推送到整个应用程序?

Javascript 如何在Angular.js服务中正确包装GAE通道API,并将更新推送到整个应用程序?,javascript,google-app-engine,angularjs,channel-api,Javascript,Google App Engine,Angularjs,Channel Api,因此,我尝试使用with进行实时数据绑定更新(这将非常酷,对吧!?)。我被告知正确的方法是将通道API包装在Angular.js服务()中。但这到底意味着什么 据我所知,对于Channel API,我几乎应该有一个1:1的client:Channel连接,因此我的所有更新都必须在整个应用程序中的所有模型的一个通道中进行。然后如何向可能多个作用域广播模型(通常是ngResource)已更新$看$发射$广播$摘要?我也有同样的要求,并通过角度服务解决了它。我在这里描述了我的解决方案: 好的,经过一些

因此,我尝试使用with进行实时数据绑定更新(这将非常酷,对吧!?)。我被告知正确的方法是将通道API包装在Angular.js服务()中。但这到底意味着什么


据我所知,对于Channel API,我几乎应该有一个1:1的client:Channel连接,因此我的所有更新都必须在整个应用程序中的所有模型的一个通道中进行。然后如何向可能多个作用域广播模型(通常是ngResource)已更新$看$发射$广播$摘要?

我也有同样的要求,并通过角度服务解决了它。我在这里描述了我的解决方案:


好的,经过一些编码,我现在决定了一个选项,即使用存储键和回调(由控制器添加)的通道服务在客户端上发布子数据。当服务器发送一个键时,将调用与该键对应的所有回调(通常是一组
$get()s
)。现在为我工作,但我仍然不确定这是正确的方式……不是你的问题的解决方案,但至少要考虑的是,通道API支持1:1连接,这意味着如果你想向许多客户广播一个消息,你必须发送许多消息,当你使用PubNub时,你只发送了一条信息,任何人都会收到信息。谢谢,PubNub看起来很棒;我来看看。我越来越习惯于使用1:1通道API连接作为此应用程序的安全、锁定的广播方式,但PubNub似乎对其他项目有帮助。