Node与Express开发
Ethan Brown
吴海星, 苏文 译
出版时间:2015年01月
页数:254
“这本书信息量很大,同时又引人入胜。这是我见过的对这一主题的最佳介绍,它覆盖的内容范围非常之广,囊括了用Node与Express框架搭建具备生产能力的Web应用所需掌握的一切。”
——Semmy Purewal, Netflix公司高级软件工程师
“关于Node这一主题,我自己写过9本书。我可以证明这是一本非常不错的同题材书籍!”
——Azat Mardanov, 资深软件工程师,《JavaScript快速全栈开发》作者

本书涵盖Express 4.0,系统地讲解了利用Express(Node/JavaScript开发栈中的重要组件)开发动态Web应用的流程和步骤。作者Ethan Brown通过开发一个示例应用讲授了开发公共网站和REST API的基础知识。此外还介绍了设计与实现Web架构的最佳实践,帮你用Express构建单页、多页以及混合Web应用。
Express在根本没有框架和有一个健壮的框架之间找到了平衡,让你自由选择架构。通过本书,熟悉JavaScript的前端和后端工程师会发现一种新的Web开发视角。

通过阅读本书,你将能够:
· 为渲染动态数据创建网页模板系统
· 探究请求对象和响应对象、中间件及URL路由
· 模拟用于测试和开发的生产环境
· 实现文档数据库的持久化,特别是针对MongoDB
· 让其他程序可以通过REST API访问你的资源
· 用HTTPS、认证和授权开发安全的Web应用
· 集成社交媒体、地理位置服务和其他第三方服务
· 实现应用的启动和维护计划
· 学习重要的调试技能

  1. 前言
  2. 第1章 初识Express
  3. 1.1 JavaScript革命
  4. 1.2 初识Express
  5. 1.3 Express简史
  6. 1.4 升级到Express 4.0
  7. 1.5 Node:一种新型Web服务器
  8. 1.6 Node的生态系统
  9. 1.7 授权
  10. 第2章 从Node开始
  11. 2.1 获取Node
  12. 2.2 使用终端
  13. 2.3 编辑器
  14. 2.4 npm
  15. 2.5 用Node实现的简单Web服务器
  16. 2.5.1 Hello World
  17. 2.5.2 事件驱动编程
  18. 2.5.3 路由
  19. 2.5.4 静态资源服务
  20. 2.6 走向Express
  21. 第3章 省时省力的Express
  22. 3.1 脚手架
  23. 3.2 草地鹨旅行社网站
  24. 3.3 初始步骤
  25. 3.3.1 视图和布局
  26. 3.3.2 视图和静态文件
  27. 3.3.3 视图中的动态内容
  28. 3.4 小结
  29. 第4章 工欲善其事,必先利其器
  30. 4.1 最佳实践
  31. 4.2 版本控制
  32. 4.3 针对本书如何使用Git
  33. 4.3.1 如果你要自己动手
  34. 4.3.2 如果你要使用官方存储库
  35. 4.4 npm包
  36. 4.5 项目元数据
  37. 4.6 Node模块
  38. 第5章 质量保证
  39. 5.1 QA:值得吗
  40. 5.2 逻辑与展示
  41. 5.3 测试的类型
  42. 5.4 QA技术概览
  43. 5.5 运行你的服务器
  44. 5.6 页面测试
  45. 5.7 跨页测试
  46. 5.8 逻辑测试
  47. 5.9 去毛
  48. 5.10 链接检查
  49. 5.11 用Grunt实现自动化
  50. 5.12 持续集成
  51. 第6章 请求和响应对象
  52. 6.1 URL的组成部分
  53. 6.2 HTTP请求方法
  54. 6.3 请求报头
  55. 6.4 响应报头
  56. 6.5 互联网媒体类型
  57. 6.6 请求体
  58. 6.7 参数
  59. 6.8 请求对象
  60. 6.9 响应对象
  61. 6.10 获取更多信息
  62. 6.11 小结
  63. 6.11.1 内容渲染
  64. 6.11.2 处理表单
  65. 6.11.3 提供一个API
  66. 第7章 Handlebars模板引擎
  67. 7.1 唯一一条绝对规则
  68. 7.2 选择模板引擎
  69. 7.3 Jade:不走寻常路
  70. 7.4 Handlebars基础
  71. 7.4.1 注释
  72. 7.4.2 块级表达式
  73. 7.4.3 服务器端模板
  74. 7.4.4 视图和布局
  75. 7.4.5 在Express中使用(或不使用)布局
  76. 7.4.6 局部文件
  77. 7.4.7 段落
  78. 7.4.8 完善你的模板
  79. 7.4.9 客户端Handlebars
  80. 7.5 小结
  81. 第8章 表单处理
  82. 8.1 向服务器发送客户端数据
  83. 8.2 HTML表单
  84. 8.3 编码
  85. 8.4 处理表单的不同方式
  86. 8.5 Express表单处理
  87. 8.6 处理AJAX表单
  88. 8.7 文件上传
  89. 8.8 jQuery文件上传
  90. 第9章 Cookie与会话
  91. 9.1 凭证的外化
  92. 9.2 Express中的Cookie
  93. 9.3 检查Cookie
  94. 9.4 会话
  95. 9.4.1 内存存储
  96. 9.4.2 使用会话
  97. 9.5 用会话实现即显消息
  98. 9.6 会话的用途
  99. 第10章 中间件
  100. 10.1 常用中间件
  101. 10.2 第三方中间件
  102. 第11章 发送邮件
  103. 11.1 SMTP、MSA和MTA
  104. 11.2 接收邮件
  105. 11.3 邮件头
  106. 11.4 邮件格式
  107. 11.5 HTML邮件
  108. 11.6 Nodemailer
  109. 11.6.1 发送邮件
  110. 11.6.2 将邮件发送给多个接收者
  111. 11.7 发送批量邮件的更佳选择
  112. 11.8 发送HTML邮件
  113. 11.8.1 HTML邮件中的图片
  114. 11.8.2 用视图发送HTML邮件
  115. 11.8.3 封装邮件功能
  116. 11.9 将邮件作为网站监测工具
  117. 第12章 与生产相关的问题
  118. 12.1 执行环境
  119. 12.2 环境特定配置
  120. 12.3 扩展你的网站
  121. 12.3.1 用应用集群扩展
  122. 12.3.2 处理未捕获的异常
  123. 12.3.3 用多台服务器扩展
  124. 12.4 网站监控
  125. 12.4.1 第三方正常运行监控
  126. 12.4.2 应用程序故障
  127. 12.5 压力测试
  128. 第13章 持久化
  129. 13.1 文件系统持久化
  130. 13.2 云持久化
  131. 13.3 数据库持久化
  132. 13.3.1 关于性能
  133. 13.3.2 设置MongoDB
  134. 13.3.3 Mongoose
  135. 13.3.4 使用Mongoose连接数据库
  136. 13.3.5 创建模式和模型
  137. 13.3.6 添加初始数据
  138. 13.3.7 获取数据
  139. 13.3.8 添加数据
  140. 13.3.9 用MongoDB存储会话数据
  141. 第14章 路由
  142. 14.1 路由和SEO
  143. 14.2 子域名
  144. 14.3 路由处理器是中间件
  145. 14.4 路由路径和正则表达式
  146. 14.5 路由参数
  147. 14.6 组织路由
  148. 14.7 在模块中声明路由
  149. 14.8 按逻辑对处理器分组
  150. 14.9 自动化渲染视图
  151. 14.10 其他的路由组织方式
  152. 第15章 REST API和JSON
  153. 15.1 JSON和XML
  154. 15.2 我们的API
  155. 15.3 API错误报告
  156. 15.4 跨域资源共享
  157. 15.5 我们的数据存储
  158. 15.6 我们的测试
  159. 15.7 用Express提供API
  160. 15.8 使用REST插件
  161. 15.9 使用子域名
  162. 第16章 静态内容
  163. 16.1 性能方面的考虑
  164. 16.2 面向未来的网站
  165. 16.2.1 静态映射
  166. 16.2.2 视图中的静态资源
  167. 16.2.3 CSS中的静态资源
  168. 16.3 服务器端JavaScript中的静态资源
  169. 16.4 客户端JavaScript中的静态资源
  170. 16.5 提供静态资源
  171. 16.6 修改静态内容
  172. 16.7 打包和缩小
  173. 16.8 关于第三方库
  174. 16.9 QA
  175. 16.10 小结
  176. 第17章 在Express中实现MVC
  177. 17.1 模型
  178. 17.2 视图模型
  179. 17.3 控制器
  180. 17.4 小结
  181. 第18章 安全
  182. 18.1 HTTPS
  183. 18.1.1 生成自己的证书
  184. 18.1.2 使用免费的证书颁发机构
  185. 18.1.3 购买证书
  186. 18.1.4 对你的Express应用启用HTTPS
  187. 18.1.5 关于端口的说明
  188. 18.1.6 HTTPS和代理
  189. 18.2 跨站请求伪造
  190. 18.3 认证
  191. 18.3.1 认证与授权
  192. 18.3.2 密码的问题
  193. 18.3.3 第三方认证
  194. 18.3.4 把用户存在数据库中
  195. 18.3.5 认证与注册和用户体验
  196. 18.3.6 Passport
  197. 18.3.7 基于角色的授权
  198. 18.3.8 添加更多认证提供者
  199. 18.4 小结
  200. 第19章 集成第三方API
  201. 19.1 社交媒体
  202. 19.1.1 社交媒体插件和站点性能
  203. 19.1.2 搜索推文
  204. 19.1.3 渲染推文
  205. 19.2 地理编码
  206. 19.2.1 用谷歌的地理编码
  207. 19.2.2 对你的数据做地理编码
  208. 19.2.3 显示地图
  209. 19.2.4 提升客户端性能
  210. 19.3 天气数据
  211. 19.4 小结
  212. 第20章 调试
  213. 20.1 调试的首要原则
  214. 20.2 利用好REPL和控制台
  215. 20.3 利用Node内置的调试器
  216. 20.4 Node探查器
  217. 20.5 调试异步函数
  218. 20.6 调试Express
  219. 第21章 正式启用
  220. 21.1 域名注册和托管服务
  221. 21.1.1 域名系统
  222. 21.1.2 安全
  223. 21.1.3 顶级域名
  224. 21.1.4 子域名
  225. 21.1.5 域名服务器
  226. 21.1.6 托管
  227. 21.1.7 部署
  228. 21.2 小结
  229. 第22章 维护
  230. 22.1 维护的原则
  231. 22.1.1 有长远规划
  232. 22.1.2 使用源码控制系统
  233. 22.1.3 使用问题追踪系统
  234. 22.1.4 良好的卫生习惯
  235. 22.1.5 不要拖延
  236. 22.1.6 做常规的QA检查
  237. 22.1.7 监测分析
  238. 22.1.8 性能优化
  239. 22.1.9 潜在用户追踪优先
  240. 22.1.10 防止出现“不可见的”错误
  241. 22.2 代码重用及重构
  242. 22.2.1 私有npm库
  243. 22.2.2 中间件
  244. 22.3 小结
  245. 第23章 其他资源
  246. 23.1 在线文档
  247. 23.2 期刊
  248. 23.3 Stack Overflow
  249. 23.4 为Express做贡献
  250. 23.5 小结
书名:Node与Express开发
作者:Ethan Brown
译者:吴海星, 苏文 译
国内出版社:人民邮电出版社
出版时间:2015年01月
页数:254
书号:978-7-115-38033-3
原版书书名:Web Development with Node and Express
原版书出版商:O'Reilly Media
Ethan Brown
 
Ethan Brown美国俄勒冈州Pop Art公司的高级软件工程师,负责网站及Web服务架构的设计与实现。拥有20多年编程经验,从事过嵌入式开发和Web开发,他相信JavaScript技术栈是未来的Web平台。