比较SSE、WebSocket或者数据拉取方案的区别,以便你在解决手头的问题时自如选择
开发一个包含后端和前端解决方案的实际SSE应用
解决错误处理、系统恢复和其他问题,使应用达到产品水准
分析不支持SSE的浏览器的两种向后兼容解决方案
处理安全问题,包括认证授权和不允许的域
开发在测试驱动SSE设计中有用的实际、可重用的数据
学习示例应用中不包含的SSE协议元素
前言IX
第1章 SSE 及其他1
1.1 HTML52
1.2 数据推送2
1.3 数据推送的其他名称5
1.4 可能会用到SSE 的应用5
1.5 和WebSocket 的对比6
1.6 什么时候数据推送是错误的选择8
1.7 决策、决策还是决策10
1.8 带我看代码吧11
第2章 玩转SSE13
2.1 最简单的示例:前端13
2.2 使用jQuery 吗16
2.3 最简示例:后端17
2.4 基于Node.js 的后端19
2.4.1 基于Node.js 的最简Web 服务器19
2.4.2 用Node.js 做推送20
2.4.3 在浏览器中运行22
2.5 华丽退场25
第3章 迷人的真实数据推送应用27
3.1 问题领域27
3.2 后端28
3.3 前端32
3.4 可复现的真实随机数据33
3.5 精磨时间戳36
3.6 控制好随机性39
3.7 为时间的真正流逝留出余地41
3.8 本章内容盘点42
第4章 别安于现状43
4.1 数据的更多构成43
4.2 重构PHP44
4.3 重构JavaScript45
4.4 历史数据存储47
4.5 永久存储50
4.6 现在我们是历史学家53
第5章 走出象牙塔,打造产品级品质55
5.1 错误处理55
5.2 错误的JSON56
5.3 长连接56
5.3.1 服务器端57
5.3.2 客户端58
5.3.3 SSE 重试60
5.4 添加定期的关闭/ 重连63
5.5 发送Last-Event-ID66
5.6 多路数据ID69
5.7 使用Last-Event-ID70
5.8 在重连时发送ID72
5.9 不要全局化,考虑本地化74
5.10 阻止缓存75
5.11 阻止死亡75
5.12 精简的简单办法76
5.13 本章回顾76
第6章 向后兼容:其他数据推送策略77
6.1 浏览器战争77
6.2 什么是轮询78
6.3 怎样做长轮询79
6.4 给我看些代码80
6.5 优化长轮询83
6.6 如果JavaScript 被禁用怎么办84
6.7 将长轮询移植到我们的外汇交易应用85
6.7.1 连接85
6.7.2 长轮询和长连接87
6.7.3 长轮询和连接错误88
6.7.4 服务器端89
6.7.5 处理数据91
6.7.6 接起来92
6.7.7 IE8 及更早版本92
6.7.8 IE7 及其更早版本93
6.8 蜿蜒曲折的轮询94
第7章 向后兼容:另辟蹊径95
7.1 共性96
7.2 XHR98
7.3 iframe100
7.4 将XHR/iframe 移植到外汇交易应用102
7.4.1 后端的XHR102
7.4.2 前端的XHR103
7.4.3 前端的iframe103
7.4.4 接通XHR104
7.4.5 接通iframe105
7.5 感谢内存107
7.6 把襁褓中的外汇交易应用放到床上108
第8章 关于SSE 的其他标准111
8.1 请求头111
8.2 事件114
8.3 多行数据118
8.4 消息中的空白120
8.5 又见请求头120
8.6 这就是全部内容吗121
第9章 认证授权:谁在敲门123
9.1 Cookie123
9.2 认证授权(使用Apache 服务器)125
9.3 带有SSE 的HTTP POST127
9.4 多重鉴权选择129
9.5 SSL 和CORS(连接到其他服务器)130
9.6 Allow-Origin132
9.7 完善访问控制134
9.8 HEAD 和OPTIONS135
9.9 Chrome 和Safari 以及CORS137
9.10 构造函数与证书138
9.11 withCredentials138
9.12 CORS 和向后兼容方案140
9.12.1 CORS 和IE9 及其更早版本141
9.12.2 IE8/IE9:总是使用长轮询142
9.12.3 动态处理IE9 及其更早版本143
9.13 汇总146
9.14 未来会有更多一样151
附录A SSE 标准153
A.1 W3C 候选推荐标准2012.12.11153
A.1.1 摘要154
A.1.2 本文档的状态154
A.1.3 目录155
A.1.4 引言156
A.1.5 一致性要求157
A.1.6 术语158
A.1.7 EventSource 接口158
A.1.8 处理模型160
A.1.9 解析事件流162
A.1.10 解释事件流162
A.1.11 注意事项165
A.1.12 无连接推送和其他特性166
A.1.13 垃圾回收166
A.1.14 IANA 须知167
A.1.15 参考文献169
A.1.16 致谢170
附录B 重构:JavaScript 全局变量、对象和闭包171
B.1 示例171
B.2 问题是……174
B.3 JavaScript 对象和构造函数175
B.4 用对象的代码176
B.5 JavaScript 闭包177
附录C PHP181
C.1 PHP 中的类181
C.2 随机函数182
C.3 超全局变量182
C.4 数据处理182
C.5 密码183
C.6 休眠184
《崧泽之光》内容简介:以古文化和水文化为特色的青浦,有着丰厚的历史文化底蕴。早在六千多年前,上海最早的外来移民来到了境内的
《服装设计师创业指南》就是要摘下时装界的光环,在呈现其艰辛一面的同时奉上有用的知识和有效的方法以战胜困难,这是一本关于时
Thisbookoffersastep-by-stepguidetotheexperimentalplanningprocessandtheensuingana...
《Excel函数与公式标准教程:实战微课版》内容简介:《Excel函数与公式标准教程(实战微课版)》以微型实用办公案例的形式,对Exce
《生物信息学中的计算机技术》以一种清晰、活泼的方式,全面介绍了生物信息学领域中最重要的一些主题。《生物信息学中的计算机技
WithPHPfortheWorldWideWeb,ThirdEdition:VisualQuickStartGuide,readerscanstartfrom...
《职场进阶的60个原则》内容简介:以原则为基础的人生成为专家型人才,还是管理型人才?接受犯错让下属干,还是撸起袖子亲自干?从
MasterthechallengesofAndroiduserinterfacedevelopmentwiththesesamplepatternsWithA...
本书详细介绍了广泛的Web技术,包括:HTTP、XHTML、CSS、JavaScript、DOM、Javaservlet、XML及相关技术、JSP、SOAP、W...
这是湖南美术出版社出版的《德国新媒体插画教程》系列中的两本插画书之幻想类一本。由来自德国HAW的孟克塔塞尔教授引领,展示了他
计算机组成及汇编语言原理英文版 内容简介 这本有创新性的书以Java虚拟机为例介绍了计算机组成及汇编语言的原理,Java虚拟机是一个极为便利、时新,可移植以及几...
《决胜移动终端》内容简介:•在移动互联时代,拥有移动终端的消费者不再需要“去购物”,他们随时随地都“在购物”。这就给企业带来
《基于Android Studio的案例教程(第2版)》内容简介:本书主要介绍如何利用Android Studio、Eclipse等工具开发Android项目。...
《多云和混合云:云原生多集群和应用管理》内容简介:这是一本讲解如何在多云/混合云的环境下进行多集群管理、多集群应用编排以及应
《Python数据整理》内容简介:本书从Python最基础的知识开始,主要聚焦于数据结构,接着快速转至数据整理的基本工具NumPy和pandas库
云计算是一个新兴的术语,很多技术还处在起步阶段。云计算涉及的范围非常广,包括分布式计算、并行计算、效用计算等。《分布式系
《经典里的中国(全新修订版)》内容简介:不读经典,也能活得好好的,但问题是,“活得好好的”意味着什么? 《诗经》《论语》《庄
《JSF第一步:JSF+Spring+Hibernate+AJAX编程》讲述JSF是表示层框架的标准,Hibernate是一个比较完善的对象关系映射工具,Spr...
《爱是万能的调味》内容简介:爱是世间最美的味道,爱是世间万能的调味品。爱是流淌在生命里,妈妈的味道。台湾地区著名的私房菜老
《经济法基础》内容简介:本书旨在帮助广大读者进行2015年会计专业技术资格考试的复习备考,其主要功能在于帮助读者准确把握考试重