展开全部

主编推荐语

巧用JavaScript技术栈,探索Web开发新思路。

内容简介

本书系统地讲解了使用Express开发动态Web应用的流程和步骤。作者不仅讲授了开发公共站点及REST API的基础知识,还讲解了构建单页、多页及混合Web应用的规划方式及最佳实践。为了适应中间件及相关工具在过去几年里的变化,第2版更侧重于Express作为提供API的后端服务器,并新增了单页应用的示例。本书适合希望使用JavaScript、Node、Express构建Web应用的开发人员阅读。

目录

  • 版权信息
  • O'Reilly Media, Inc. 介绍
  • 献词
  • 前言
  • 第1章 Express是什么
  • 1.1 JavaScript的革命
  • 1.2 Express简介
  • 1.3 服务器端应用和客户端应用
  • 1.4 Express简史
  • 1.5 Node:另一种Web服务器
  • 1.6 Node生态系统
  • 1.7 开源协议
  • 1.8 小结
  • 第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.4 视图与布局
  • 3.5 静态文件与视图
  • 3.6 视图中的动态内容
  • 3.7 小结
  • 第4章 项目整顿
  • 4.1 项目文件与目录结构
  • 4.2 最佳实践
  • 4.3 版本控制
  • 4.4 在本书学习中如何使用Git
  • 4.4.1 亲手录入
  • 4.4.2 使用官方版本库
  • 4.5 npm包
  • 4.6 项目元数据
  • 4.7 Node模块
  • 4.8 小结
  • 第5章 质量保证
  • 5.1 QA计划
  • 5.2 QA:是否值得
  • 5.3 逻辑与表示
  • 5.4 测试类型
  • 5.5 QA技术
  • 5.6 安装和配置Jest
  • 5.7 单元测试
  • 5.7.1 模拟
  • 5.7.2 为可测试性而重构应用
  • 5.7.3 写第一个测试
  • 5.7.4 测试维护
  • 5.7.5 代码覆盖率
  • 5.8 集成测试
  • 5.9 Linting
  • 5.10 持续集成
  • 5.11 小结
  • 第6章 request和response对象
  • 6.1 URL的各个组成部分
  • 6.2 HTTP请求方法
  • 6.3 请求头
  • 6.4 响应头
  • 6.5 互联网媒体类型
  • 6.6 请求的Body
  • 6.7 request对象
  • 6.8 response对象
  • 6.9 深入源代码
  • 6.10 按功能归纳
  • 6.10.1 渲染内容
  • 6.10.2 处理表单
  • 6.10.3 API服务
  • 6.11 小结
  • 第7章 视图模板
  • 7.1 何时使用模板
  • 7.2 选择模板引擎
  • 7.3 Pug:另辟蹊径
  • 7.4 Handlebars基础
  • 7.4.1 注释
  • 7.4.2 代码块
  • 7.4.3 服务器端模板
  • 7.4.4 视图和布局
  • 7.4.5 在Express中使用(或不使用)布局
  • 7.4.6 sections
  • 7.4.7 partial模板
  • 7.4.8 完善模板
  • 7.5 小结
  • 第8章 表单处理
  • 8.1 把客户端数据发送到服务器
  • 8.2 HTML表单
  • 8.3 表单的编码
  • 8.4 处理表单的不同做法
  • 8.5 使用Express处理表单
  • 8.6 使用fetch发送表单数据
  • 8.7 文件上传
  • 使用fetch做文件上传
  • 8.8 提升文件上传的UI
  • 8.9 小结
  • 第9章 Cookie和Session
  • 9.1 提取敏感信息
  • 9.2 Express中的Cookie
  • 9.3 查看Cookie
  • 9.4 Session
  • 9.4.1 内存存储
  • 9.4.2 使用Session
  • 9.5 使用Session实现flash消息
  • 9.6 Session的用途
  • 9.7 小结
  • 第10章 中间件
  • 10.1 基本原理
  • 10.2 中间件示例
  • 10.3 常用中间件
  • 10.4 第三方中间件
  • 10.5 小结
  • 第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 运行Node进程
  • 12.4 网站的扩展
  • 12.4.1 使用应用集群实现水平扩展
  • 12.4.2 处理未捕获的异常
  • 12.4.3 使用多台服务器完成水平扩展
  • 12.5 监控网站的运行
  • 第三方在线监控
  • 12.6 压力测试
  • 12.7 小结
  • 第13章 持久化
  • 13.1 文件系统持久化
  • 13.2 云持久化
  • 13.3 数据库持久化
  • 13.3.1 关于性能的提醒
  • 13.3.2 数据库层抽象
  • 13.3.3 设置MongoDB
  • 13.3.4 Mongoose
  • 13.3.5 使用Mongoose连接数据库
  • 13.3.6 创建模式和模型
  • 13.3.7 使用种子数据初始化
  • 13.3.8 获取数据
  • 13.3.9 更新数据
  • 13.3.10 PostgreSQL
  • 13.3.11 新增数据
  • 13.4 使用数据库存储Session
  • 13.5 小结
  • 第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 使用Express提供API
  • 15.7 小结
  • 第16章 单页应用
  • 16.1 Web应用开发简史
  • 16.2 SPA技术选择
  • 16.3 创建React应用
  • 16.4 React基本概念
  • 16.4.1 主页
  • 16.4.2 路由
  • 16.4.3 度假产品页——可视化设计
  • 16.4.4 度假产品页——跟服务器端集成
  • 16.4.5 向服务器发送信息
  • 16.4.6 状态管理
  • 16.4.7 部署选择
  • 16.5 小结
  • 第17章 静态内容
  • 17.1 性能上的考量
  • 17.2 内容分发网络(CDN)
  • 17.3 为CDN而设计
  • 17.3.1 服务器端渲染的网站
  • 17.3.2 单页应用
  • 17.4 缓存静态资源
  • 17.5 变更静态内容
  • 17.6 小结
  • 第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
  • 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.3 天气数据
  • 19.4 小结
  • 第20章 调试
  • 20.1 调试原则第一条
  • 20.2 利用REPL和控制台
  • 20.3 使用Node的内建调试器
  • 20.4 Node调试客户端
  • 20.5 调试异步函数
  • 20.6 调试Express
  • 20.7 小结
  • 第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 小结
  • 关于作者
  • 关于封面
展开全部

评分及书评

4.7
3个评分
  • 用户头像
    给这本书评了
    5.0
    相当不错的一本书

    代码和内容均优。

      转发
      评论

    出版方

    人民邮电出版社

    人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。