google-app-engine – 适用于Google App Engine的XMPP和渠道API之间的差异

我正在开发一个不在AppEngine上的应用程序,并且具有聊天功能,可以放入通信Web客户端(浏览器 javascript)和移动客户端(ActionScript).
我正在考虑在AppEngine上使用XMPP协议(然后只在Google上使用服务器进行聊天功能,并将其余部分留在我的服务器上).你告诉我这是否可能?
与Channel API有什么不同?
谢谢
XMPP和Channel API解决了堆栈的两个不同级别的问题.

XMPP描述了从一个端点到另一个端点的消息的通用方法.现有的XMPP客户端适用于Windows,Linux,OSX等,并且现有的XMPP客户端库已写入C++,Python,javascript等.如果您只想向已知拥有XMPP客户端的用户提供文本,请使用XMPP App Engine API是显而易见的解决方案;如果您希望对客户端体验拥有大量控制权并有时间花在其上,那么使用现有的XMPP库并制作自定义客户端可能是一个不错的选择.

Channel API描述了用于发送消息的服务器端方法和用于接收消息的客户端方法. App Engine实现提供了一个javascript客户端,这是Web应用程序的棘手部分,因为它需要持久的HTTP连接.您当然可以使用您喜欢的任何方式在另一个平台上重新实现Channel API(对于App Engine,我们使用Google Talk堆栈;后端的XMPP使用JSON通过前端的长轮询HTTP连接).

根本问题是您实现需要多少抽象. Channel API比XMPP API抽象得多,并提供了一个客户端库,可以轻松地通过javascript进行连接.

相关文章
相关标签/搜索