我正在使用Google App Engine和Channel API创建Web应用程序。这是我第一次尝试做类似Ajax的事情,我怀疑有一种解决我的问题的标准技术,但我一直无法找到它。通过GAE通道API优雅地处理封闭通道
我的客户端程序会将消息发布到服务器。如果消息无法发送,例如,如果通道关闭,消息会发生什么情况?如果客户端在平板电脑上并且用户走出无线网络的范围会怎么样?对于我的应用程序来说,重要的是消息会被憎恨,但我不知道如何去做。
当通道关闭时,我知道我应该从服务器请求一个新的令牌,但我不知道我的客户端如何获得该令牌并在不重新加载页面的情况下打开连接(并因此丢失数据) 。在给出的演示here中,客户端需要知道该令牌。
var channel = new goog.appengine.Channel({{token}});
但我已经在其他地方看到客户端不需要知道该令牌。 - 这将如何工作?
另外,onerror和onclose回调函数似乎没有给我失败的消息,所以我怎么知道需要重新发送什么?
如果有人能把我推向正确的方向,我将非常感激。