Ste*_*ino 7 google-app-engine xmpp channel-api
我正在开发一个不在AppEngine上的应用程序,并且具有聊天功能,可以放入通信Web客户端(浏览器+ javascript)和移动客户端(ActionScript).我正在考虑在AppEngine上使用XMPP协议(然后在Google上只使用服务器进行聊天功能,并将其余部分留在我的服务器上).你告诉我这是否可能?与Channel API有什么不同?谢谢
Moi*_*vin 10
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进行连接.
据我了解 ChannelAPI 是 Google XMPP 服务背后的支柱。如果您想在客户端的 JavaScript 和 GAE 上托管的 Web 应用程序之间异步发送/接收(服务器推送)行 JSON 对象,那么 ChannelAPI 是最佳选择。
| 归档时间: |
|
| 查看次数: |
5125 次 |
| 最近记录: |