第1章 RESTful API的基本原理 1
1.1 SOAP和REST的比较 3
1.2 Web架构风格 4
1.2.1 CS模式 5
1.2.2统一资源接口 5
1.2.3分层系统 5
1.2.4缓存机制 6
1.2.5无状态 6
1.2.6按需编码 6
1.2.7 HATEOAS 6
1.3安全性 7
1.4什么是REST? 8
1.4.1 REST基础知识 8
1.4.2 REST基本原理 9
1.5小结 10
第2章 API设计和建模 11
2.1 API设计策略 11
2.2 API创建流程和方法论 13
2.2.1流程 13
2.2.2 API方法论 14
2.2.3域分析或API描述 14
2.2.4架构设计 15
2.2.5原型设计 16
2.2.6实现 16
2.2.7发布 16
2.2.8 API建模 16
2.2.9 API建模的比较 18
2.3最佳实践 19
2.3.1保持基础URL简明直观 19
2.3.2错误处理 20
2.3.3版本控制 22
2.3.4局部响应 23
2.3.5分页 23
2.3.6多格式 24
2.3.7 API Facade 24
2.4 API解决方案架构 24
2.4.1移动解决方案 25
2.4.2云端解决方案 25
2.4.3 Web端解决方案 26
2.4.4集成解决方案 26
2.4.5多终端解决方案 26
2.4.6智能电视解决方案 26
2.4.7物联网 26
2.5 API解决方案中的利益相关者 26
2.5.1 API提供者 27
2.5.2 API消费者 27
2.5.3最终用户 27
2.6小结 33
第3章 XML与JSON介绍 35
3.1 XML简介 35
3.1.1 XML注释 36
3.1.2 XML的重要性 37
3.1.3如何使用XML 38
3.1.4 XML的优缺点 38
3.2 JSON简介 38
3.2.1 JSON语法 39
3.2.2 JSON的重要性 40
3.2.3如何使用JSON 41
3.2.4 JSON的优缺点 42
3.3 XML和JSON的比较 42
第4章 JAX-RS介绍 51
4.1 JAX-RS简介 51
4.1.1输入和输出内容类型 52
4.1.2 JAX-RS注入 53
4.2 REST实现 55
第5章 API组合和框架 65
5.1 API组合架构 65
5.1.1需求 65
5.1.2一致性 65
5.1.3可重用 66
5.1.4可定制 66
5.1.5可发现 66
5.1.6持久性 66
5.2如何实施这些需求——治理? 67
5.2.1一致性 67
5.2.2可重用 67
5.2.3可定制 67
5.2.4可发现 68
5.2.5变更管理 68
5.3 API框架 68
5.3.1流程API——服务层 69
5.3.2系统API-数据访问对象 69
5.3.3体验API-API外观 70
5.3.4服务层实现 70
第6章 API平台和数据处理器 81
6.1 API平台架构 81
6.1.1我们为什么需要API平台 81
6.1.2什么是API平台 82
6.1.3 API平台需要具备的功能 82
6.1.4 API平台是如何组织的,什么是API平台的架构 84
6.1.5 API架构如何适应围绕企业的技术架构 85
6.2数据处理器 86
6.2.1数据访问对象(DAO) 86
6.2.2命令查询职责分离(CQRS) 86
6.3小结 101
第7章 API管理和API客户端 103
7.1外观 103
7.1.1外观模式 103
7.1.2 API外观 104
7.2 API管理 105
7.2.1 API生命周期 106
7.2.2 API下线 107
7.2.3 API盈利 108
第8章 API安全性与缓存机制 115
8.1 API安全性-OAuth 2 115
8.1.1角色 116
8.1.2令牌 116
8.1.3注册成客户端 117
8.1.4授权授予类型 118
8.1.5隐式授予流程 119
8.1.6资源拥有者密码凭据授予 121
8.1.7客户端凭据授予 122
8.2缓存机制 123
8.2.1服务器缓存机制 124
8.2.2 HTTP缓存机制 124
8.2.3 Web缓存机制 126
8.3小结 129