比较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
主要撰稿人克里斯・杰弗莉(ChrisJefferys)是《服装缝制图解大全》一书的主要撰稿人和组织者。多年从事缝纫和刺绣教学,后成为《
《古画新品录》内容简介:《古画新品录:一部眼睛的历史》是艺术史学者黄小峰对中国古画的品读。作者选取了流传于世的35件国画作品
接入网是通信网络(包括电信网络与IP网络)的重要组成部分。接入网技术,特别是IP接入网技术的蓬勃发展与普遍应用是当前通信网络
Dailylifeisconnectedlife,itsrhythmsdrivenbyendlessemailpingsandresponses,thechim...
我的Photoshop学习手记 内容简介 本书以photoshopcs5为技术平台,精心设计了80多个案例,内容涵盖鼠绘、色彩调整、图像合成、特效制作、创意、抠...
ANSYS Fluent 15.0流体计算从入门到精通-升级版-(含DVD光盘1张) 本书特色 fluent软件是目前国际上比较流行的商业cfd软件,只要涉及流...
《软件测试的艺术(原书第3版)》内容简介:路遥知马力,日久见人心。本书从第1版付梓到现在已经30余年,尽管这30年来计算机软硬件
《互联网:碎片化生存》内容简介:在世界互联网人数超过17亿,中国网民接近4亿的时候,断言“这个版本的互联网没有未来”是要冒很
本书系统讲解数据结构和算法,并分析了算法的复杂性。本书选择Jaya语言以面向对象的方式描述数据结构,还特别强调了封装和分解的
《程控交换与宽带交换》以程控交换、ATM交换到MPLS交换的技术发展为线索,对程控交换和宽带交换进行介绍。重点介绍程控交换技术和
《王沂孙词集》内容简介:此书系“词系列”丛书之一种。王沂孙存词六十余首,工于咏物诗,且多故国之思,清陈延焯《白雨斋词话》称
《图形设计新元素》一书提出了一些平面设计研究领域迫切需要关注的新问题。埃伦勒普顿(EllenLupton)是《字体思维》(Thinkingwith
《金融商业数据分析》内容简介:这是一本金融商业数据分析的实战工具书。作者都是在金融行业有10~20年数据分析经验的资深专家,他
Theclassic,landmarkworkonsoftwaretestingThehardwareandsoftwareofcomputinghavecha...
《西门子工业通信网络组态编程与故障诊断》全面介绍了西门子工业通信网络的结构、通信协议、通信服务和通信的组态编程与故障诊断
《语言系统、交际模式与话语语用理解研究》内容简介:语言是一个神奇而又极其复杂的交际工具,人类对语言的关注、讨论和研究已有相
《江山如画:中国古代山水志》内容简介:当我们经常顺口诵读《滕王阁序》《岳阳楼记》《前赤壁赋》等名篇的时候,你可曾想过彼时彼
《基于Web标准的网页设计技巧与实战(第2版)》通过大量现实世界中已经存在的网页实例,由浅入深地讲解了构建遵循Web标准的网页所涉
《爱上一座城》内容简介:每个人都有属于自己的城市印记,无论是出生的家乡,还是为了工作奋斗的城市,抑或是想要安度一生的土地。
《服装设计创意构思与效果图绘制》内容简介:每一位服装设计师都希望自己的设计作品被认可,分享完成每一件衣服带来的感动。服装设