书刊介绍
《Node与Express开发》内容简介
本书系统讲解了使用Express开发动态Web应用的流程和步骤。作者不仅讲授了开发公共站点及REST API的基础知识,同时还讲解了构建单页、多页及混合Web应用的规划方式及最佳实践。具体而言,第1~5章介绍Node 和Express,搭建一个示例网站的骨架,讨论测试和QA。第6~12章介绍Node中更重要的结构,讲解模板,介绍cookies、会话和表单处理器,探讨中间件以及从服务器发送电子邮件。第13~15章讨论持久化、URL路由、API的编写、流行的MVC范式。第18~22章讨论安全、社交媒体集成以及网站的调试、启用和维护。
本书适合所有前端和后端开发人员阅读。
Ethan Brown 美国俄勒冈州Pop Art公司的高级软件工程师,负责网站及Web服务架构的设计与实现。拥有20多年编程经验,从事过嵌入式开发和Web开发,他相信JavaScript技术栈是未来的Web平台。作品目录
版权声明
O'Reilly
Media,
Inc.介绍
业界评论
献词
序
前言
读者对象
内容安排
示例网站
排版约定
使用代码示例
Safari®
Books
Online
联系我们
致谢
第
1、章:初识Express
1.1、JavaScript革命
1.2、初识Express
1.3、Express简史
1.4、升级到Express
4.0、1.5、Node:一种新型Web服务器
1.6、Node的生态系统
1.7、授权
第
2、章:从Node开始
2.1、获取Node
2.2、使用终端
2.3、编辑器
2.4、npm
2.5、用Node实现的简单Web服务器
2.5.1、Hello
World
2.5.2、事件驱动编程
2.5.3、路由
2.5.4、静态资源服务
2.6、走向Express
第
3、章:省时省力的Express
3.1、脚手架
3.2、草地鹨旅行社网站
3.3、初始步骤
3.3.1、视图和布局
3.3.2、视图和静态文件
3.3.3、视图中的动态内容
3.4、小结
第
4、章:工欲善其事,必先利其器
4.1、最佳实践
4.2、版本控制
4.3、针对本书如何使用Git
4.3.1、如果你要自己动手
4.3.2、如果你要使用官方存储库
4.4、npm包
4.5、项目元数据
4.6、Node模块
第
5、章:质量保证
5.1、QA:值得吗
5.2、逻辑与展示
5.3、测试的类型
5.4、QA技术概览
5.5、运行你的服务器
5.6、页面测试
5.7、跨页测试
5.8、逻辑测试
5.9、去毛
5.10、链接检查
5.11、用Grunt实现自动化
5.12、持续集成
第
6、章:请求和响应对象
6.1、URL的组成部分
6.2、HTTP请求方法
6.3、请求报头
6.4、响应报头
6.5、互联网媒体类型
6.6、请求体
6.7、参数
6.8、请求对象
6.9、响应对象
6.10、获取更多信息
6.11、小结
6.11.1、内容渲染
6.11.2、处理表单
6.11.3、提供一个API
第
7、章:Handlebars模板引擎
7.1、唯一一条绝对规则1、7.2、选择模板引擎
7.3、Jade:不走寻常路
7.4、Handlebars基础
7.4.1、注释
7.4.2、块级表达式
7.4.3、服务器端模板
7.4.4、视图和布局
7.4.5、在Express中使用(或不使用)布局
7.4.6、局部文件
7.4.7、段落
7.4.8、完善你的模板
7.4.9、客户端Handlebars
7.5、小结
第
8、章:表单处理
8.1、向服务器发送客户端数据
8.2、HTML表单
8.3、编码
8.4、处理表单的不同方式
8.5、Express表单处理
8.6、处理AJAX表单
8.7、文件上传
8.8、jQuery文件上传
第
9、章:Cookie与会话
9.1、凭证的外化
9.2、Express中的Cookie
9.3、检查Cookie
9.4、会话
9.4.1、内存存储
9.4.2、使用会话
9.5、用会话实现即显消息
9.6、会话的用途
第
10、章:中间件
10.1、常用中间件
10.2、第三方中间件
第
11、章:发送邮件
11.1、SMTP、MSA和MTA
11.2、接收邮件
11.3、邮件头
11.4、邮件格式
11.5、HTML邮件
11.6、Nodemailer
11.6.1、发送邮件
11.6.2、将邮件发送给多个接收者
11.7、发送批量邮件的更佳选择
11.8、发送HTML邮件
11.8.1、HTML邮件中的图片
11.8.2、用视图发送HTML邮件
11.8.3、封装邮件功能
11.9、将邮件作为网站监测工具
第
12、章:与生产相关的问题
12.1、执行环境
12.2、环境特定配置
12.3、扩展你的网站
12.3.1、用应用集群扩展
12.3.2、处理未捕获的异常
12.3.3、用多台服务器扩展
12.4、网站监控
12.4.1、第三方正常运行监控
12.4.2、应用程序故障
12.5、压力测试
第
13、章:持久化
13.1、文件系统持久化
13.2、云持久化
13.3、数据库持久化
13.3.1、关于性能
13.3.2、设置MongoDB
13.3.3、Mongoose
13.3.4、使用Mongoose连接数据库
13.3.5、创建模式和模型
13.3.6、添加初始数据
13.3.7、获取数据
13.3.8、添加数据
13.3.9、用MongoDB存储会话数据
第
14、章:路由
14.1、路由和SEO
14.2、子域名
14.3、路由处理器是中间件
14.4、路由路径和正则表达式
14.5、路由参数
14.6、组织路由
14.7、在模块中声明路由
14.8、按逻辑对处理器分组
14.9、自动化渲染视图
14.10、其他的路由组织方式
第
15、章:REST
API和JSON
15.1、JSON和XML
15.2、我们的API
15.3、API错误报告
15.4、跨域资源共享
15.5、我们的数据存储
15.6、我们的测试
15.7、用Express提供API
15.8、使用REST插件
15.9、使用子域名
第
16、章:静态内容
16.1、性能方面的考虑
16.2、面向未来的网站
16.2.1、静态映射
16.2.2、视图中的静态资源
16.2.3、CSS中的静态资源
16.3、服务器端JavaScript中的静态资源
16.4、客户端JavaScript中的静态资源
16.5、提供静态资源
16.6、修改静态内容
16.7、打包和缩小
在开发模式中跳过打包和缩小
16.8、关于第三方库
16.9、QA
16.10、小结
第
17、章:在Express中实现MVC
17.1、模型
17.2、视图模型
17.3、控制器
17.4、小结
第
18、章:安全
18.1、HTTPS
18.1.1、生成自己的证书
18.1.2、使用免费的证书颁发机构
18.1.3、购买证书
18.1.4、对你的Express应用启用HTTPS
18.1.5、关于端口的说明
18.1.6、HTTPS和代理
18.2、跨站请求伪造
18.3、认证
18.3.1、认证与授权
18.3.2、密码的问题
18.3.3、第三方认证
18.3.4、把用户存在数据库中
18.3.5、认证与注册和用户体验
18.3.6、Passport
搭建Passport
18.3.7、基于角色的授权
18.3.8、添加更多认证提供者
18.4、小结
第
19、章:集成第三方API
19.1、社交媒体
19.1.1、社交媒体插件和站点性能
19.1.2、搜索推文
19.1.3、渲染推文
19.2、地理编码
19.2.1、用谷歌的地理编码
使用限制
19.2.2、对你的数据做地理编码
19.2.3、显示地图
19.2.4、提升客户端性能
19.3、天气数据
19.4、小结
第
20、章:调试
20.1、调试的首要原则
20.2、利用好REPL和控制台
20.3、利用Node内置的调试器
20.4、Node探查器
20.5、调试异步函数
20.6、调试Express
第
21、章:正式启用
21.1、域名注册和托管服务
21.1.1、域名系统
21.1.2、安全
21.1.3、顶级域名
21.1.4、子域名
21.1.5、域名服务器
21.1.6、托管
21.1.7、部署
21.2、小结
第
22、章:维护
22.1、维护的原则
22.1.1、有长远规划
22.1.2、使用源码控制系统
22.1.3、使用问题追踪系统
22.1.4、良好的卫生习惯
22.1.5、不要拖延
22.1.6、做常规的QA检查
22.1.7、监测分析
22.1.8、性能优化
22.1.9、潜在用户追踪优先
22.1.10、防止出现“不可见的”错误
22.2、代码重用及重构
22.2.1、私有npm库
22.2.2、中间件
22.3、小结
第
23、章:其他资源
23.1、在线文档
23.2、期刊
23.3、Stack
Overflow
23.4、为Express做贡献
23.5、小结
关于作者
关于封面
看完了