Web API的设计与开发下载
- 电子书名称:Web API的设计与开发
- 电子书分类:科技
- 电子书作者:[日] 水野贵明
- 电子书类型:TXT/PDF
- 信息来源:豆瓣
- ISBN: 9787115455338
- 出版时间: 2017-6
- 出版社: 人民邮电出版社
文档说明:
- 一、《Web API的设计与开发》是作者【[日] 水野贵明】创作的原创小说作品!
- 二、谁知我电子书免费提供TXT小说,TXT电子书下载。本站所有电子书资源均由网友提供的网盘,所有资源本站不负责保存,如果您认为本站的内容侵犯了您的版权,联系我们将在第一时间将该链接删除。本站不负一切责任!
Web API的设计与开发目录
前言 xv
第1章 什么是Web API 1
1.1 Web API的重要性 3
1.1.1 通过API才能使用的在线服务出现 5
1.1.2 移动应用与API 7
1.1.3 API的经济学 7
1.2 各种各样的API模式 8
1.2.1 将已发布的Web在线服务的数据或功能通过API公开 8
1.2.2 将附加在其他网页上的微件公开 9
1.2.3 构建现代Web应用 10
1.2.4 开发智能手机应用 11
1.2.5 开发社交游戏 11
1.2.6 公司内部多个系统的集成 12
1.3 应该通过API公开什么 12
1.3.1 公开API是否会带来风险 13
1.3.2 公开API能得到什么 14
1.4 设计优美的Web API的重要性 15
1.4.1 设计优美的Web API易于使用 15
1.4.2 设计优美的Web API便于更改 16
1.4.3 设计优美的Web API健壮性好 16
1.4.4 设计优美的Web API不怕公之于众 16
1.5 如何美化Web API 17
1.6 REST与Web API 18
1.7 作为目标对象的开发人员数量与API的设计思想 19
1.8 小结 20
第2章 端点的设计与请求的形式 21
2.1 设计通过API公开的功能 21
2.2 API端点的设计思想 24
2.3 HTTP方法和端点 31
2.3.1 GET方法 32
2.3.2 POST方法 33
2.3.3 PUT方法 33
2.3.4 DELETE方法 34
2.3.5 PATCH方法 35
2.4 API端点的设计 37
2.4.1 访问资源的端点设计的注意事项 41
2.4.2 注意所用的单词 43
2.4.3 不使用空格及需要编码的字符 43
2.4.4 使用连接符来连接多个单词 44
2.5 搜索与查询参数的设计 45
2.5.1 获取数据量和获取位置的查询参数 46
2.5.2 使用相对位置存在的问题 47
2.5.3 使用绝对位置来获取数据 48
2.5.4 用于过滤的参数 49
2.5.5 查询参数和路径的使用区别 52
2.6 登录与OAuth 2.0 53
2.6.1 access token的有效期和更新 58
2.6.2 其他Grant Type 59
2.7 主机名和端点的共有部分 61
2.8 SSKDs与API的设计 63
2.9 HATEOAS和REST LEVEL3 API 64
2.9.1 REST LEVEL3 API的优点 67
2.9.2 REST LEVEL3 API 67
2.10 小结 68
第3章 响应数据的设计 69
3.1 数据格式 69
3.2 使用JSONP 74
3.2.1 支持JSONP的操作方法 75
3.2.2 JSONP与错误处理 77
3.3 数据内部结构的思考方法 79
3.3.1 让用户来选择响应的内容 81
3.3.2 封装是否必要 82
3.3.3 数据是否应该扁平化 83
3.3.4 序列与格式 85
3.3.5 该如何返回序列的个数以及是否还有后续数据 88
3.4 各个数据的格式 90
3.4.1 各个数据的名称 90
3.4.2 如何描述性别数据 92
3.4.3 日期的格式 95
3.4.4 大整数与JSON 96
3.5 响应数据的设计 97
3.6 出错信息的表示 98
3.6.1 通过状态码来表示出错信息 98
3.6.2 向客户端返回详细的出错信息 99
3.6.3 如何填写详细的出错信息 101
3.6.4 发生错误时防止返回HTML 102
3.6.5 维护与状态码 102
3.6.6 需要返回意义不明确的信息时 103
3.7 小结 104
第4章 最大程度地利用HTTP协议规范 105
4.1 使用HTTP协议规范的意义 105
4.2 正确使用状态码 107
4.2.1 2字头状态码:成功 109
4.2.2 3字头状态码:添加必要的处理 111
4.2.3 当客户端请求发生问题时 113
4.2.4 5字头状态码:当服务器端发生问题时 115
4.3 缓存与HTTP协议规范 116
4.3.1 过期模型 117
4.3.2 验证模型 120
4.3.3 启发式过期 122
4.3.4 不希望实施缓存的情况 123
4.3.5 使用Vary来指定缓存单位 123
4.3.6 Cache-Control首部 125
4.4 媒体类型的指定 127
4.4.1 使用Content-Type指定媒体类型的必要性 129
4.4.2 以x-开头的媒体类型 130
4.4.3 自己定义媒体类型的情况 131
4.4.4 使用JSON或XML来定义新的数据格式的情况 132
4.4.5 媒体类型与安全性 133
4.4.6 请求数据与媒体类型 134
4.5 同源策略和跨域资源共享 136
4.5.1 CORS基本的交互 137
4.5.2 事先请求 138
4.5.3 CORS与用户认证信息 139
4.6 定义私有的HTTP首部 139
4.7 小结 141
第5章 开发方便更改设计的Web API 143
5.1 方便更改设计的重要性 143
5.1.1 公开发布的API 144
5.1.2 面向移动应用的API 145
5.1.3 Web服务中使用的API 145
5.2 通过版本信息来管理API 146
5.2.1 在URI中嵌入版本编号 147
5.2.2 如何添加版本编号 149
5.2.3 在查询字符串里加入版本信息 151
5.2.4 通过媒体类型来指定版本信息 152
5.2.5 应该采用什么方法 153
5.3 版本变更的方针 153
5.4 终止提供API 155
5.4.1 案例学习:Twitter废除旧版本的API 156
5.4.2 预先准备好停止服务时的规范 156
5.4.3 在使用条款中写明支持期限 159
5.5 编排层 160
5.6 小结 162
第6章 开发牢固的Web API 163
6.1 让Web API变得安全 163
6.2 非法获取服务器端和客户端之间的信息 165
6.2.1 用HTTPS对HTTP通信实施加密 165
6.2.2 使用HTTPS是否意味着100%安全 167
6.3 使用浏览器访问API时的问题 169
6.3.1 XSS 169
6.3.2 XSRF 174
6.3.3 JSON劫持 176
6.4 思考防范恶意访问的对策 180
6.4.1 篡改参数 181
6.4.2 请求再次发送 183
6.5 同安全相关的HTTP首部 185
6.5.1 X-Content-Type-Options 185
6.5.2 X-XSS-Protection 186
6.5.3 X-Frame-Options 186
6.5.4 Content-Security-Policy 187
6.5.5 Strict-Transport-Security 187
6.5.6 Public-Key-Pins 188
6.5.7 Set-Cookie首部和安全性 189
6.6 应对大规模访问的对策 191
6.6.1 限制每个用户的访问 192
6.6.2 限速的单位 194
6.6.3 应对超出上限值的情况 195
6.6.4 向用户告知访问限速的信息 198
6.7 小结 204
附录A 公开Web API的准备工作 205
A.1 提供API文档 205
A.2 提供沙盒API 206
A.3 API Console 207
A.4 提供SDK 209
附录B Web API确认清单 211
· · · · · ·
来自微博用户2020-12-25 13:34:20
的评论《Web API的设计与开发》★★★☆。互联网服务后端开发的工作里我最不想做的事情的就是设计API,因为要斟酌的地方实在太多:新功能的扩展、旧功能的适配、沟通的成本、实现的复杂度,等等等等,甚至可以说每设计出一个API都注定是在给未来挖坑。究其原因,主要还是业界没有像面向对象设计模式那样抽象 ...
来自微博用户2020-12-25 13:34:20
的评论想读《Web API的设计与开发》 3分想读Web API的设计与开发
来自微博用户2020-12-25 13:34:20
的评论#好书推荐# 《Web API的设计与开发》网页链接API如果设计得不好,不仅会很难用,而且公开之后的运维也很困难,因此设计优美的API非常重要。本书结合丰富的实例,详细讲解了Web API的设计、开发与运维相关的知识。全书共分为6章内容,第1章介绍Web API的概要,第2章详述端点的设计与请求的 ...
来自微博用户2020-12-25 13:34:20
的评论#好书推荐# 今天给大家介绍另外一本小绿~ 《Web API的设计与开发》是一本教会你设计优美API的书籍。这本书不仅适合Web API的初学者,同样还适合有一定经验的读者哦~书中实例丰富,详细地总结了设计、开发和运维Web API时需要注意的地方。当你在工作中遇到困惑时,翻阅此书,一定会有很大的收获~ 戳下 ...
来自微博用户2020-12-25 13:34:20
的评论#新样书# 【下周即将上架的新书来图灵了!?哪一本?】《iOS开发指南:从Hello World到App Store上架(第5版)》《Web API的设计与开发》《Web安全开发指南》《数据分析实战》《Git团队协作》《流畅的Python》(我来充数)
来自微博用户2020-12-25 13:34:20
的评论客户端个性化,游戏化的趋势会让前台设计与开发走的更近,也注定了对前台人才定位的改变和前台需求的扩大。服务端的API化让传统的程序员将来走向何方?如果直接让数据库作为web service的host,通过配置来制定web service和其对数据的访问权限,这会是云环境的宠儿。IT领域的role在变化,跟上步伐。