我正在使用带有 Channel API 的 Google App Engine 创建一个 Web 应用程序。这是我第一次尝试做任何类似 Ajax 的事情,我怀疑有一种标准技术可以解决我的问题,但我一直找不到它。
我的客户端程序会将消息发布到服务器。如果消息无法发送,例如通道关闭,消息会发生什么?如果客户端在平板电脑上并且用户走出无线网络范围怎么办?对于我的应用程序,重新发送消息至关重要,但我不知道如何执行此操作。
当通道关闭时,我知道我应该从服务器请求一个新令牌,但我不知道我的客户端如何在不重新加载页面的情况下获取该令牌并打开连接(从而丢失数据)。在此处给出的演示中,客户端需要知道令牌。
var channel = new goog.appengine.Channel({{token}});
但我在别处读到客户端不需要知道令牌。——这将如何运作?
此外,onerror 和 onclose 回调函数似乎没有给我失败的消息,所以我怎么知道需要重新发送什么?
如果有人能把我推向正确的方向,我将不胜感激。