本书通过7个实例分别讲解了Node.js在实战开发中的应用,这些章节既涉及Docker、Koa 等最新技术,也涉及OAuth2、命令行工具、消息队列、单元测试、编写C/C++模块等实战中经常会遇到的问题和应用场景。本书章节大体按照从简单到复杂的难度编排,每一章都通过一个实例指引读者从头开发一个Node.js应用,让读者循序渐进地学习Node.js,以及在实战开发中的编程技巧。本书不但着重讲解了每个实战案例所涉及的基础知识、思路和方法,也详细解释了源码的关键部分,希望有利于读者的学习和理解。本书适合有一定Node.js基础及服务器端开发基础的读者阅读,也适合想了解Node.js可以做什么、想迅速上手实践的读者阅读。
摘要
推荐序
前言
第1章 通过Docker快速发布Node.js应用
1.1 什么是Docker
1.2 Nginx作为Node.js前端WebServer的作用
1.3 安装Docker和下载Images镜像
1.4 Docker常用命令
1.5 启动Container盒子
1.6 文件卷标加载
1.7 将多个Container盒子连接起来
1.8 不要用SSH连接到你的Container盒子
1.9 配置DockerImages镜像和发布应用
1.10 什么是Jenkins
1.11 通过Docker安装和启动Jenkins
1.12 配置Jenkins并自动化部署Node.js项目
1.13 小结
1.14 参考文献
第2章 开发OAuth2认证服务器
2.1 本章所用到的第三方模块
2.2 REST风格的API
2.3 定义返回数据格式
2.4 实现简单的API
2.5 关于OAuth认证
2.6 实现OAuth认证
2.7 实现API客户端
2.8 API传输过程中的安全问题
2.9 API请求频率限制
2.10 让API返回结果支持不同的格式
2.11 生成随机的测试数据
2.12 小结
2.13 参考文献及开源项目
第3章 基于RabbitMQ搭建消息队列
3.1 什么是消息队列,消息队列的优势
3.2 安装和启动RabbitMQ
3.3 RabbitMQ的HelloWorld
3.4 RabbitMQ的工作队列
3.5 RabbitMQ的PUB/SUB队列
3.6 RabbitMQ的队列路由
3.7 RabbitMQ的RPC远程过程调用
3.8 基于RabbitMQ的Node.js和Python通信实例
3.9 RabbitMQ方案和HTTP方案的对比
3.10 小结
3.11 参考文献
第4章 编写命令行工具——打造一个静态博客系统
4.1 本章所使用到的第三方模块
4.2 命令格式
4.3 编写命令行工具
4.4 实时预览
4.5 生成静态博客
4.6 配置文件
4.7 创建空白博客模板
4.8 一些有用的第三方服务
4.9 小结
4.10 参考文献
第5章 基于Koa快速开发Web应用
5.1 ES6时代的来临
5.2 模板系统
5.3 路由
5.4 参数验证与错误处理
5.5 缓存和配置
5.6 测试
5.7 开发一个论坛系统
5.8 小结
5.9 参考文献
第6章 Node.js测试服务搭建
6.1 概述
6.2 搭建后端测试服务
6.3 搭建前端测试服务
6.4 加入持续集成工作流
6.5 小结
6.6 参考资料
第7章 使用Node.js绑定C语言库——51Degrees.node
7.1 开发背景
7.2 预备知识
7.3 编码
7.4 构建与发布
7.5 如何从nan1.x升级到nan2.x
7.6 后记

