HTML5数据推送应用开发1.1 HTML5_HTML5数据推送应用开发1.1 HTML5试读-查字典图书网
查字典图书网
当前位置: 查字典 > 图书网 > web > HTML5数据推送应用开发 > 1.1 HTML5

HTML5数据推送应用开发——1.1 HTML5

SSE(Server-Sent Event,服务端推送事件)是一种允许服务端向客户端推送新数据的HTML5 技术。与由客户端每隔几秒从服务端轮询拉取新数据相比,这是一种更优的解决方案。在写作本书时,65% 的桌面和移动浏览器原生支持这项技术,但是,本书将介绍如何开发支持超过99% 桌面浏览器和移动浏览器的向后兼容解决方案。顺便说一下,10 年前我只能用Flash 来实现这种数据推送;事情进展太迅速了,本书中已不会有任何用Flash实现的方案。 本书中提到的浏览器占比数据来自超赞的“Can I Use...”网站,网址是http://caniuse.com/eventsource。而该网站的数据则来自StatCounter GlobalStats,网址是gs.statcounter.com/。给那些爱较真的人说明一下,“超过99%”的意思是“在我能接触到的所有桌面或移动浏览器上都可以运行”。所以,如果你发现浏览器支持率没有达到精确的99%,还请见谅。 对那些禁用JavaScript 的浏览器来说,不论是SSE 还是我们聪明的向后兼容解决方案都不管用。但是,被告知“不可能”是一件让人不爽的事,所以我会介绍一种让这些浏览器也能动态更新的方案(见6.6 节)。 接下来,本章会介绍什么是HTML5 和数据推送,讨论一些可能会用到SSE 技术的应用,并会花点时间对比一下SSE 和WebSocket,以及它们和根本不使用数据推送的方案的区别。如果你已经对数据推送有大致的了解,想直接跳到第2 章去看代码示例,然后再回到这里,我也可以理解。 1.1 HTML5 前面提到SSE 是一种HTML5 技术。在现代网络中,HTML 用以指定网页或应用的结构和内容,CSS 用以描述其外观,JavaScript 用以使它具有动态性和交互性。 JavaScript 表达行为,CSS 表达外观;注意,HTML 既表达结构,即逻辑结构(DOM),又表达内容,即数据本身。通常需要更新数据时,并不需要更新结构。正是这种不改变组织结构仅改变数据的诉求,推动了数据拉取和数据推送技术的产生。 大概在1990 年,蒂姆•伯纳斯- 李(Tim Berners-Lee)发明了HTML。官方从未正式发布HTML 1.0 标准,但在1995 年末发布了HTML 2.0。那时候,人们是以月来讨论互联网时代的,因为这项技术发展得太快了。HTML 2.0 因增加了表格、图片上传以及图片映射而得到了增强。1997 年1 月,以HTML 1.0 和HTML 2.0 为基础的HTML 3.2 发布。同年12 月,HTML 4.0 发布。当然,中间有过一些微调,那就是XHTML 出现了,不过它基本上就是今天你在用的HTML,除非你在用HTML5。 大部分HTML5 新增的特性都是可选的,这意味着绝大部分情况下,你可用你所知道的HTML 4,然后选择一些你想要的HTML5 特性。HTML5 新增了一些元素(包括直接支持视频、音频,以及矢量和位图绘图)和表单控件,移除了一些在HTML 4 中不建议使用的东西。但对我们来说,更有意义的是,HTML5 新增了一大堆JavaScript 应用程序编程接口(API), SSE 就是其中之一。想要了解更多关于HTML5 的知识,参见维基百科条目1。 HTML5 新增特性的正交性意味着,虽然本书的所有代码都是HTML5 的(如代码第一行<!doctype html> 所示),但除了与SSE 直接相关的部分,其他的都是你所习惯的HTML 4,没有用到任何HTML5 的新标签。 注1: http://en.wikipedia.org/wiki/HTML5。 ——译者注

展开全文

推荐文章

猜你喜欢

附近的人在看

推荐阅读

拓展阅读

《HTML5数据推送应用开发》其他试读目录

• 1.1 HTML5 [当前]
• 1.2 数据推送
• 1.3 数据推送的其他名称
• 1.4 可能会用到SSE的应用
• 1.5 和WebSocket的对比
• 1.6 什么时候数据推送是错误的选择
• 1.7 决策、决策还是决策
• 1.8 带我看代码吧