比较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
《流浪生死书》内容简介:人生实苦,要么是身体的病,要么是精神上的痛。人,无法躲避,只有超越。有的人选择文学、有的人选择艺术
MichaelAbrashsclassicGraphicsProgrammingBlackBookisacompilationofMichaelspreviou...
征服Ajax+Lucene构建搜索引擎 内容简介 本书分Ajax和Lucene两部分,内容涵盖了JavaScript的基础、层叠样式表CSS、DOM与JavaS...
《通信用户线路终端安装与维护》以职业能力培训为目标,以安装、维护的基本流程为编写主线,以项目为载体,以工作过程为导向,将
《为什么是中国》内容简介:金一南将军全新著作,一部感天动地的奋斗史诗,一代一代人铸就的中华之魂。以广阔全面的视野、一以贯之
《Spark Streaming实时流式大数据处理实战》内容简介:本书以透彻的原理分析和充实的实例代码详解,全面阐述了Spark Streaming流式
《现代编译器的Java实现》(第2版)可作为高等院校编译技术课程的教材、教师参考书以及编译技术研究人员的参考资料。目录 第一部分
《Essential C++中文版》内容简介:本书以四个面向来表现C++的本质:procedural(面向过程的)、generic(泛型的)、object-ba...
数据库原理及应用(SQLServer2005)-数学指导与习题解答 本书特色 《数据库原理及应用(SQL Server 2005):教学指导与习题解答》是国家级...
众所周知,视觉营销从业者在零售业界正发挥着日益重要的影响力。无论是对商家在产品销售及陈列展示上的辅助与指导,还是在推进当
《西方文明东进战略与中国应对》内容简介:本书结合西方文明向东方国家扩散的历史与现实,深刻揭示与剖析西方文明东进战略,全书从
《Kafka入门与实践》内容简介:本书中的大量实例来源于作者在实际工作中的实践,具有现实指导意义。相信读者阅读完本书之后,能够全
《金融科技:变迁与演进》内容简介:互联网金融在中国的发展依靠市场、技术和制度三方面的因素。在市场方面,随着中国改革开放的不
很多程序员及软件设计师都认为,用c++开发意味着放弃程序性能提升的可能。在很多人眼里,使用c++来开发那些效率至上的应用无疑将
《我不是产品经理》内容简介:移动互联网商业模式下的用户增长,本质上就是更低成本地获取用户,更高效率地实现商业变现,并在获取
空间信息智能服务理论与方法 本书特色 《空间信息智能服务理论与方法》共分10章。为了给读者阅读空间信息服务作相关知识铺垫,本书第1章、第2章分别阐述了网络服务的...
本书由“java之父”JameGosling以及另外三位顶级大师撰写而成,无论是对java语言的初学者还是专业程序员都具有极高的价值,是关于
《第一本心理学漫画书:梦的解析》内容简介:《第一本心理学漫画书:梦的解析》系列漫画是根据弗洛伊德最主要的三部著作《梦的解析
《狐狸踏雪的三种可能》内容简介:诗要抵达真实,诗要抵达纯粹,诗更要抵达大众。本书主打独立诗歌品牌“诗100”,收录的100首诗歌
主板维修技能实训(芯片级) 内容简介 本书结合大量图解与实例,循序渐进地讲解了主板的结构和电路组成,常用维修工具,元器件好坏的判定方法,总线插槽和测试点,以及接...