反向Ajax原理和模型(燕十八php笔记)

commet又叫反向Ajax(Reverse Ajax),或者server push 服务器推技术,在实时聊天和消息推送中应用的比较广,我们要了解反向Ajax、轮询(polling)、流(streaming)、Comet和长轮询(long polling),学习如何实现不同的反向Ajax通信技术,并探讨每种方法的优点和缺点。

首先,没有用反向ajax的情形是怎么样的?

 

 

就像美国派情报人员刺探中国军情一样,刚开始,不知道什么时候有情报,所以,不管有没有情报,美国情报人员都每隔一天来中国看一次(连上后看下服务器就断开,2秒后重复),隔着太平洋呢浪费油钱也浪费精力,反向ajax呢,情报人员赖在中国不走了,什么时候有情报了再回去报告(使用http的“长连接”与trunk传输(trunk有分块传输的意思)可以有情报了也不用回美国,就一直呆着),没有情报就一直在中国等,不用回美国,(连接上服务器后就不断开了,有了消息才断开返回)

 

具体做法:

1,要有个php死循环,一直运行,有消息就推送到浏览器上

以上是模型;

具体的聊天室肯定不能干巴巴的直接放在页面,要嵌套一个iframe,iframe使用上面的模型,它会不断的得到服务器的数据;

让iframe得到的消息包含js代码,<script>....</script>

让iframe中的js影响父页面的变化

 

posted @ 2014-11-19 13:43  王孙将归  阅读(490)  评论(0编辑  收藏  举报