服务器推送(Server push)之前一直是一个很热门的话题,最近也是兴趣所致,想研究下到底有多神奇,起初最先考虑到的是javascript的reload(),定时刷新,不过这样的方案很快就否定了,无疑这是找死。 而后很自然的就想到了利用Ajax技术,可是根本问题是Server不会自动给客户端发送信息,一味这必须模块一个reuqest给Server,然后才可以通信,于是乎,开始了一个漫长的旅程....
通过强大的Google,下来了pushlet框架的一些例子,看完之后有点不可思议,代码中出现了很多神奇的东西
if (PL.state < PL.STATE_LISTENING) {
PL._setStatus('not refreshing state=' + PL.STATE_LISTENING);
}
var timeout = event.get('p_wait');
setTimeout(function () {
PL._doRequest('refresh');
}, timeout);
return;
...
.....
_showStatus: function() {
// To show progress
if (PL.statusChanged == true) {
if (PL.statusChar == '|') PL.statusChar = '/';
else if (PL.statusChar == '/') PL.statusChar = '--';
else if (PL.statusChar == '--') PL.statusChar = '\\';
else PL.statusChar = '|';
PL.statusChanged = false;
}
window.defaultStatus = PL.statusMsg;
window.status = PL.statusMsg + ' ' + PL.statusChar;
timeout = window.setTimeout('PL._showStatus()', 400);
},
原来它们也是一个伪推送,只不过是先进行一个请求,然后向服务器注册一个key,然后服务器容器返回key和一个time,然后ajax-pushlet-client.js再根据time请求,当服务器有消息推送时,就会根据key发送到view。
pushlet的大致原理其实就是这样....
哎....
(以上只是个人的部分看法)
分享到:
相关推荐
本文将深入探讨如何利用Java中的Servlet实现Server Push技术来创建一个聊天室应用。 ### Servlet与Server Push技术 Servlet是Java平台上的服务器端应用程序接口,它主要用于扩展应用程序服务器的能力,处理来自...
ASP.NET (C#) ServerPush 是一种技术,用于在服务器端主动向客户端推送数据,而无需客户端持续发起请求。在传统的HTTP协议中,浏览器与服务器之间的通信基于请求-响应模型,即客户端发起请求,服务器返回响应。然而...
"Server Push"是一种网络通信技术,它允许服务器主动地向客户端发送数据,而不仅仅是响应客户端的请求。在传统的HTTP协议中,服务器仅在接收到客户端请求时才会返回数据,但Server Push打破了这种单向通信模式,提高...
在Android平台上实现Server Push技术,MQTT(Message Queuing Telemetry Transport)协议是一个常见的选择。MQTT是一个轻量级的发布/订阅模型的网络协议,主要用于低带宽、高延迟或不可靠的网络环境中,特别适合...
### 服务器推送技术(Server Push)详解 #### 一、引言 随着互联网技术的发展,用户对实时信息的需求越来越高。传统的客户端请求模式(Client Pull)已无法满足这种需求,因此服务器推送技术(Server Push)应运而生。...
### Server Push 技术入门详解 #### 一、Server Push 技术概述 **Server Push**,即服务器推送技术,是一种让服务器能够主动向客户端发送数据的技术。与传统的客户端发起请求(Client Pull)的方式不同,Server ...
**基于 AJAX 和 Webservice 的长轮询方式 ServerPush 技术模拟** 在现代网页应用中,实时性成为了不可或缺的需求,例如股票更新、聊天室、在线游戏等场景。传统的 HTTP 协议是基于请求-响应模式的,即客户端发起...
"ServerPush聊天室"是一种基于DWR(Direct Web Remoting)技术实现的实时通信系统,主要特点是能够实现实时的点对点聊天功能。在这个系统中,服务器主动将信息推送至客户端,而不是传统的客户端发起请求获取数据的...
在.NET开发环境中,"Server Push"技术是一种允许服务器主动向客户端发送数据,而不仅仅是响应客户端请求的方法。这种技术常用于实时应用,如聊天系统、股票报价、在线游戏等,能够提高用户体验并降低延迟。以下是对...
本篇将主要讨论使用Servlet实现的Server Push技术,即服务器端主动向客户端推送数据。 【描述】: 这篇博客(原文链接:https://zw7534313.iteye.com/blog/703114)详细介绍了如何利用Servlet实现一个简单的Web...
在Web开发中,服务器推送(Server Push)是一种技术,它允许服务器主动将数据发送到客户端,而无需等待客户端的请求。这种机制打破了传统的HTTP协议的请求-响应模型,提高了实时性和交互性。在ASP.NET框架下实现...
标题中的“Flex与Java Server Push数据”涉及到的技术是基于Adobe Flex客户端和Java服务器端的数据实时推送技术。在Web开发中,传统的HTTP协议是基于请求-响应模型的,但这种模式无法实现服务器主动向客户端推送数据...
ASP.NET Server Push是一种技术,它允许服务器主动向客户端发送数据,而无需客户端发起新的请求。在传统的HTTP协议中,客户端需要先发起请求,服务器才能响应数据。然而,Server Push技术打破了这种模式,使得实时性...
【标题】"serverpush做的webRoom"涉及到的技术和概念主要集中在服务器推送(Server Push)以及Web实时通信领域,尤其在构建一个基于DWR(Direct Web Remoting)的在线聊天室应用上。首先,我们来详细了解这些关键点...
ASP.NET Server Push 长连接技术是一种用于实时通信的技术,它允许服务器主动向客户端推送数据,而无需客户端频繁发起请求。这种技术在实时性要求较高的应用中,如在线聊天、股票更新、游戏同步等场景非常有用。传统...
本文将深入探讨 Laravel 开发中的 HTTP/2 服务器推送技术,并介绍如何在 Laravel5 中使用 `laravel-HTTP2ServerPush` 这个中间件来实现这一功能。 首先,让我们理解 HTTP/2 服务器推送的基本概念。在 HTTP/1.x 协议...
NULL 博文链接:https://packecho.iteye.com/blog/857027
服务器推送技术,也称为Server Push,是Web开发中一种创新的通信模式,旨在解决传统HTTP协议下服务器无法主动向客户端发送信息的问题。该技术源于Ajax技术的广泛应用,它改变了Web应用仅能通过用户触发请求获取数据...