我稍微了解了一下comet和APE。
哪一个更好呢?我希望用户可以看到其他用户更新的内容,就像Google Wave一样。
在comet中,有两个版本:iframe和传统ajax。它们有什么区别,哪一个更好?我不太理解。
谢谢。
我稍微了解了一下comet和APE。
哪一个更好呢?我希望用户可以看到其他用户更新的内容,就像Google Wave一样。
在comet中,有两个版本:iframe和传统ajax。它们有什么区别,哪一个更好?我不太理解。
谢谢。
Comet是一组用于开发实时应用的技术。它有两个主要实现:流媒体和长轮询。
在常规的HTTP请求中,用户向服务器发送请求、接收数据(HTML、脚本等)并关闭连接,故事就结束了。 在流媒体中,客户端或服务器永远不会关闭连接,两方共享一个单独的连接。
在长轮询中,你有一个重复的连接等待响应。基本上,浏览器向服务器发送请求并等待直到服务器响应(服务器只在有新数据要传递给客户端时才响应),然后连接被关闭,浏览器重新打开一个连接,并且这个循环不断重复 :) 这两种方法中,长轮询是最常用的。
在浏览器中使用Comet通常需要一个针对大量长期HTTP连接进行优化的Web服务器,以及一个JavaScript客户端与Comet服务器通信。因此,Ape是可安装的服务器,而Comet是其基础范例。 这里有一个Comet实现列表:http://cometdaily.com/maturity.html
Comet是一种技术的总称,也被称为“反向ajax”或“长轮询”。
APE是Comet技术的一种实现。
你可以把Comet看作是某种汽车品牌,而APE则是其车型。
另请参见:
我认为你想比较基于IFrame的技术和基于Ajax(XMLHttp)的技术。
我认为主要的区别在于,在浏览器接收到整个响应之前,您无法读取AJAX请求的响应内容。这意味着,为了模拟流式传输,您将不得不执行以下操作:
如果没有任何内容返回,服务器可以保持请求。
另一方面,基于IFrame的解决方案可以在单个请求的响应中返回多个