第三方JavaScript编程

978-7-115-39224-4
作者: [美] Ben Vinegar Anton Kovalyov
译者: 郭凯
编辑: 陈冀康

图书目录:

目录

第 1章 第三方JavaScript介绍 1

1.1 第三方JavaScript的定义 2

1.2 第三方JavaScript的

用法 4

1.2.1 嵌入式微件 6

1.2.2 分析和统计 8

1.2.3 Web服务API封装 9

1.3 开发一个简单的微件 13

1.3.1 服务端生成脚本 14

1.3.2 通过iframes分发微件 16

1.4 第三方开发的挑战 17

1.4.1 未知的上下文 17

1.4.2 共享环境 18

1.4.3 浏览器限制 19

1.5 总结 19

第 2章 应用的分发和加载 20

2.1 配置第三方开发环境 21

2.1.1 发布者的测试页面 21

2.1.2 Web服务器 22

2.1.3 模拟多个域 23

2.2 加载初始的脚本 24

2.2.1 阻塞式脚本引入 25

2.2.2 使用async和defer无阻塞

加载脚本 26

2.2.3 动态脚本插入 28

2.3 初始脚本文件 29

2.3.1 window和undefined

混淆 30

2.3.2 基本应用程序流程 31

2.4 加载额外的文件 32

2.4.1 JavaScript文件 33

2.4.2 库 35

2.5 脚本参数传递 37

2.5.1 使用查询字符串 37

2.5.2 使用片段标识符 40

2.5.3 使用自定义数据属性 40

2.5.4 使用全局变量 42

2.6 获取应用数据 44

2.7 总结 45

第3章 HTML和CSS的渲染 46

3.1 输出HTML 47

3.1.1 使用document.write 47

3.1.2 追加到已知位置 48

3.1.3 追加多个微件 50

3.1.4 解耦渲染对象 52

3.2 为你的HTML添加

样式 53

3.2.1 使用内联样式 53

3.2.2 加载CSS文件 54

3.2.3 嵌入CSS到

JavaScript中 56

3.3 防御性的HTML和CSS 59

3.3.1 命名空间59

3.3.2 CSS的特殊性 60

3.3.3 过度设置CSS的特殊性 62

3.4 将内容嵌入到iframe中 65

3.4.1 没有设置src的iframe 66

3.4.2 外部iframe 68

3.4.3 样式继承 69

3.4.4 何时避免使用iframe 73

3.5 小结 74

第4章 与服务器通信 75

4.1 AJAX和浏览器的同源

策略 76

4.1.1 判定同源的规则 77

4.1.2 同源策略和脚本加载 78

4.2 带填充的JSON

(JSONP) 80

4.2.1 通过脚本元素加载

JSON 80

4.2.2 动态的回调函数 81

4.2.3 局限性和安全问题 84

4.3 子域名代理 85

4.3.1 使用document.domain更改

文档的源 87

4.3.2 使用子域代理实现跨域

通信 88

4.3.3 子域名代理与JSONP

相结合 91

4.3.4 Internet Explorer和子域

代理 94

4.3.5 安全隐患 95

4.4 跨源资源共享 95

4.4.1 发送简单的HTTP请求 96

4.4.2 使用CORS传输

Cookie 98

4.4.3 发送预检请求 99

4.4.4 浏览器支持 99

4.5 总结 100

第5章 跨域iframe通信 101

5.1 HTML5 window.postMessage

API 102

5.1.1 使用window.postMessage

发送信息 103

5.1.2 接收发送给窗口的

消息 104

5.1.3 浏览器的支持 106

5.2 降级技术 107

5.2.1 使用window.name发送

消息 108

5.2.2 使用URL片段标识符发送消息 111

5.2.3 使用Flash发送消息 113

5.3 使用easyXDM简化跨域

消息通信 116

5.3.1 加载并初始化easyXDM 116

5.3.2 使用easyXDM.Socket发送

简单信息 118

5.3.3 使用easyXDM.Rpc定义

JSON-RPC接口 119

5.4 总结 124

第6章 验证和会话 125

6.1 第三方Cookie 126

6.1.1 Sessions的设置和

读取 127

6.1.2 禁用第三方Cookie 128

6.1.3 Internet Explorer和

P3P头 129

6.1.4 检测cookies是否可用 131

6.2 设置第三方cookie 134

6.2.1 使用独立窗口 134

6.2.2 iframe的解决方案

(只针对Safari) 137

6.2.3 Chrome和Firefox中的单页面会话 140

6.3 会话安全 140

6.3.1 HTTPS和更安全的

cookie 141

6.3.2 多级身份认证 142

6.4 总结 144

第7章 安全性 145

7.1 Cookies,会话,和会话

窃取 146

7.2 跨站脚本 147

7.2.1 XSS攻击 148

7.2.2 CSS中的XSS漏洞 149

7.2.3 防止XSS对应用的

攻击 151

7.3 跨站请求伪造 153

7.3.1 XSRF攻击 154

7.3.2 JSON劫持 155

7.3.3 保护应用免受XSRF

攻击 156

7.4 发布者漏洞 158

7.4.1 发布者模拟 158

7.4.2 点击劫持 160

7.4.3 拒绝服务 162

7.5 总结 162

第8章 独特的框架 163

8.1 实现一个**基本的

SDK 165

8.1.1 初始化 166

8.1.2 异步加载 167

8.1.3 暴露公共方法 170

8.1.4 事件监听器 170

8.2 版本管理 173

8.2.1 URL版本管理 174

8.2.2 通过初始化进行版本

控制 176

8.3 封装Web服务的

APIs 178

8.3.1 在客户端访问Web服务

APIs 179

8.3.2 封装Camera Stork API 182

8.3.3 识别发布者 186

8.3.4 用户授权和OAuth 190

8.4 总结 191

第9章 性能 193

9.1 优化负荷 194

9.1.1 合并和压缩源代码 195

9.1.2 减少图像请求 196

9.1.3 缓存文件 198

9.1.4 推迟HTTP请求 199

9.2 JavaScript优化 204

9.2.1 浏览器内部:UI线程,重绘和回流 205

9.2.2 控制耗性能的调用:throttle和debounce函数 206

9.2.3 使用setTimeout延迟

计算 208

9.3 被感知的性能 210

9.3.1 对用户的操作保持

乐观 211

9.3.2 在文档就绪之前

渲染 212

9.4 总结 213

第 10章 调试和测试 215

10.1 调试 216

10.1.1 在生产环境中使用开发

环境的代码 218

10.1.2 单步执行代码 223

10.2 测试 227

10.2.1 单元测试、集成测试和

回归测试 228

10.2.2 使用QUnit编写回归

测试 230

10.2.3 使用Hiro写回归

测试 233

10.3 总结 236

详情

本书由第三方应用程序开发专家编写,详细介绍了开发各种微件的技术,这些微件可以用来搜集数据以用于分析、提供有用的聚会和对话,或者实现诸如聊天和评论这样的功能。本书中的概念和实例,涵盖了这一新兴领域的很多最佳实践,而且这些是基于显示世界上百万用户数千小时的经验而得来的。

图书摘要

相关图书

JavaScript函数式编程指南
JavaScript函数式编程指南
JavaScript学习指南(第3版)
JavaScript学习指南(第3版)
JavaScript数据可视化编程
JavaScript数据可视化编程
JavaScript忍者秘籍
JavaScript忍者秘籍
深入理解JavaScript
深入理解JavaScript
JavaScript入门经典(第6版)
JavaScript入门经典(第6版)

相关文章

相关课程