您好,欢迎访问一九零五行业门户网

网页消息系统是如何做到不刷新网页提醒的?

比如像segmentfault这样的网站,怎么做的的?
回复内容: 比如像segmentfault这样的网站,怎么做的的?
可以很直白的回答你,这个是用ajax的技术做的。首先我们需要了解一下ajax是什么:
使用ajax的最大优点,就是能在不更新整个页面的前提下维护数据。这使得web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变的信息。 —— ajax
看了这句话你就应该明白,这正是你所寻求的的东西。下面我们就来写一个简单的示例,获取segmentfault官方微博的消息,简单的了解ajax的强大(jquery版)
http://jsfiddle.net/axvrt/
至于具体如何ajax,怎么样ajax,我希望你能自行google,网上很多教程,多看看就会了。
大多使用long polling来替代传统的ajax轮询
long polling原理其实很简单,也很讨巧。与polling相比,long polling客户端也许不会马上收到来自服务端的响应,需要等待一些时间(直到有新消息,或者连接timeout了等等)。同样的,客户端也不再需要定时向服务发送请求了,而是直到收到服务端响应之后,或者连接丢失之后,客户端接着马上请求客户端。这里,我打个比方,传统的polling一般是由c向s询问:”有我的信件吗?”。s接到询问之后,会立即查询,并且把查询结果告诉c,不管有没有c的信件,要码回复:”嗯,你有x封信。”,要码回复:”没,没有你的信”.而long polling更像是这样,c向s发出询问:”有我的信件吗?”,s开始查询,如果有则回复c:”嗯,有你x封信”。如果没有,则不作任何回复,而是让c等着,自己一遍一遍地查询是否有订阅者的信。换句话说:当s收到c的查询请求之后,polling则只查询一次,并且把查询结果告诉c;而long polling收到请求之后,则会一遍一遍地查询,直到有消息才会响应c,不然一直hold client。
详情:php服务端推送技术long polling
ajax只能做到轮询,接收消息有延迟。websockets可以实时收到消息。
其它类似信息

推荐信息