ASP.NET Core与RESTful API 开发实战
- ISBN:9787115519511
- 装帧:一般胶版纸
- 册数:暂无
- 重量:暂无
- 开本:24cm
- 页数:306页
- 出版时间:2020-02-01
- 条形码:9787115519511 ; 978-7-115-51951-1
本书特色
(1)理论+实践,从零开始带你学习.NET Core开发。(2)详细介绍REST、HTTP、ASP.NET Core的基础理论。(3)深入剖析ASP.NET Core提供的重要特性。(4)全面解读构建规范的RESTful API应用的方方面面。
内容简介
本书将系统讲解使用ASP.NET Core实现REST风格的Web服务, 利用C#语言编写。基础方面, 介绍REST基本概念、HTTP协议及REST*佳实践指导原则, ASP.NET Core开发框架及其重要特性, 如中间件、MVC、配置、日志等。实战方面, 讲解对REST资源的查询、获取、更新、删除等, ORM框架和一些高级话题, 如分页、过滤、筛选等, 以及API的权限与认证、文档化、测试与部署等内容。
目录
1.1 API与REST 1
1.1.1 什么是API 1
1.1.2 什么是REST 2
1.1.3 REST约束 2
1.1.4 对REST的错误理解 4
1.2 HTTP协议 5
1.2.1 HTTP简介 5
1.2.2 统一资源定位符 5
1.2.3 媒体类型 7
1.2.4 HTTP消息 8
1.2.5 HTTP方法 9
1.2.6 HTTP消息头 10
1.2.7 状态码 12
1.3 REST*佳实践 13
1.4 其他问题 14
1.4.1 JSON和XML 14
1.4.2 API版本 16
1.5 本章小结 16
第 2章 .NET Core和ASP.NET Core 17
2.1 .NET Core简介 17
2.2 .NET Standard简介 18
2.3 ASP.NET Core简介 22
2.3.1 ASP.NET Core主要特性 22
2.3.2 ASP.NET Core 2.1新增特性 23
2.3.3 ASP.NET Core 2.2新增特性 24
2.3.4 ASP.NET Core 3.0的变化 25
2.3.5 将ASP.NET Core 2.1应用升级
到ASP.NET Core 2.2 26
2.4 设置开发环境 26
2.4.1 安装Visual Studio 26
2.4.2 安装Visual Studio Code 28
2.4.3 .NET Core CLI 29
2.5 创建第 一个 API 项目 30
2.5.1 使用Visual Studio 2017 30
2.5.2 使用Visual Studio Code 36
2.6 本章小结 39
第3章 ASP.NET Core核心特性 40
3.1 启动与宿主 40
3.1.1 应用程序的启动 40
3.1.2 Kestrel 43
3.1.3 Startup类 45
3.2 中间件 46
3.2.1 中间件简介 46
3.2.2 添加中间件 47
3.2.3 自定义中间件 51
3.3 依赖注入 52
3.3.1 依赖注入简介 52
3.3.2 ASP.NET Core中的依赖注入 55
3.4 MVC 57
3.4.1 理解MVC模式 57
3.4.2 路由 58
3.4.3 Controller与Action 64
3.4.4 模型绑定 67
3.4.5 模型验证 70
3.4.6 过滤器 72
3.5 配置 78
3.5.1 访问JSON配置文件 78
3.5.2 访问其他配置源 79
3.5.3 自定义配置源 82
3.5.4 重新加载配置 85
3.5.5 强类型对象 85
3.6 日志 87
3.6.1 ILogger接口 87
3.6.2 ILoggerFactory接口 89
3.6.3 ILoggerProvider接口 90
3.6.4 分组和过滤 91
3.7 错误处理 94
3.7.1 异常处理 94
3.7.2 错误码处理 96
3.8 本章小结 96
第4章 资源操作 98
4.1 项目创建 98
4.1.1 项目简介 98
4.1.2 创建项目 99
4.2 使用内存数据 100
4.2.1 创建内存数据源 100
4.2.2 仓储模式 101
4.2.3 实现仓储模式 102
4.3 创建Controller 104
4.4 获取资源 106
4.4.1 获取集合 106
4.4.2 获取单个资源 106
4.4.3 获取父/子形式的资源 108
4.5 创建资源 110
4.5.1 创建资源简介 110
4.5.2 创建子级资源 113
4.6 删除资源 115
4.6.1 删除单个资源 115
4.6.2 删除父与子 116
4.7 更新资源 117
4.7.1 更新资源简介 117
4.7.2 部分更新 120
4.8 内容协商 123
4.8.1 内容协商简介 123
4.8.2 实现内容协商 125
4.9 本章小结 128
第5章 使用Entity Framework Core 129
5.1 Entity Framework Core 129
5.1.1 Entity Framework Core简介 129
5.1.2 在项目中添加EF Core 130
5.2 使用EF Core 131
5.2.1 EF Core的使用 131
5.2.2 创建实体类 132
5.2.3 创建DbContext类 134
5.2.4 添加迁移与创建数据库 135
5.2.5 添加测试数据 137
5.3 重构仓储类 139
5.3.1 创建通用仓储接口 139
5.3.2 创建其他仓储接口 141
5.4 重构Controller和Action 143
5.4.1 使用AutoMapper 143
5.4.2 重构AuthorController 145
5.4.3 重构BookController 147
5.5 本章小结 151
第6章 高级查询和日志 152
6.1 分页 152
6.1.1 实现分页 152
6.1.2 添加分页元数据 154
6.2 过滤和搜索 158
6.2.1 过滤 158
6.2.2 搜索 160
6.3 排序 161
6.3.1 实现排序 162
6.3.2 属性映射 165
6.4 日志和异常 168
6.4.1 记录日志 168
6.4.2 异常处理 170
6.5 本章小结 172
第7章 高级主题 173
7.1 缓存 173
7.1.1 HTTP缓存 173
7.1.2 响应缓存中间件 177
7.1.3 内存缓存 179
7.1.4 分布式缓存 180
7.2 并发 186
7.2.1 为什么需要并发控制 186
7.2.2 不同的并发处理策略 187
7.2.3 实现并发控制 188
7.3 版本 190
7.3.1 API版本 190
7.3.2 实现API版本 191
7.4 HATEOAS 198
7.4.1 HATEOAS简介 198
7.4.2 实现HATEOAS 201
7.5 GraphQL 207
7.5.1 GraphQL简介 207
7.5.2 与REST相比 208
7.5.3 添加GraphQL服务 209
7.6 本章小结 215
第8章 认证和安全 217
8.1 认证 217
8.1.1 HTTP认证 217
8.1.2 实现基于Token的认证 221
8.2 ASP.NET Core Identity 227
8.2.1 Identity介绍 227
8.2.2 使用Identity 230
8.2.3 授权 235
8.3 HTTPS 239
8.3.1 HTTPS简介 239
8.3.2 HTTPS重定向中间件 241
8.3.3 HSTS中间件 242
8.4 数据保护 244
8.4.1 数据保护API 244
8.4.2 使用数据保护API 245
8.4.3 配置数据保护 249
8.4.4 用户机密 251
8.5 CORS 254
8.5.1 CORS简介 254
8.5.2 实现CORS 256
8.6 限流 259
8.7 本章小结 262
第9章 测试和文档 263
9.1 测试 263
9.1.1 测试简介 263
9.1.2 单元测试 264
9.1.3 集成测试 267
9.2 文档 274
9.2.1 Swagger简介 274
9.2.2 XML注释 276
9.3 本章小结 279
第 10章 部署 280
10.1 部署到IIS 280
10.1.1 发布应用 280
10.1.2 IIS配置 282
10.1.3 HTTPS配置 284
10.2 部署到Docker 286
10.2.1 Docker简介 286
10.2.2 Docker命令 288
10.2.3 Docker实践 290
10.2.4 Docker Compose简介 293
10.2.5 Docker Compose实践 294
10.3 部署到Azure 298
10.3.1 Azure简介 298
10.3.2 创建资源 298
10.3.3 部署到Azure实践 300
10.3.4 持续部署 302
10.4 本章小结 305
作者简介
杨万青,.NET架构师,具有多年软件开发经验,专注于.NET/.NET Core平台的应用开发及技术架构研究,对新技术有浓厚的兴趣。
-
有限与无限的游戏:一个哲学家眼中的竞技世界
¥37.4¥68.0 -
硅谷之火-人与计算机的未来
¥14.3¥39.8 -
全图解零基础word excel ppt 应用教程
¥12.0¥48.0 -
机器学习
¥59.4¥108.0 -
深度学习的数学
¥43.5¥69.0 -
智能硬件项目教程:基于ARDUINO(第2版)
¥37.7¥65.0 -
元启发式算法与背包问题研究
¥38.2¥49.0 -
AI虚拟数字人:商业模式+形象创建+视频直播+案例应用
¥62.9¥89.8 -
UNIX环境高级编程(第3版)
¥164.9¥229.0 -
剪映AI
¥52.8¥88.0 -
深度学习高手笔记 卷2:经典应用
¥90.9¥129.8 -
纹样之美:中国传统经典纹样速查手册
¥77.4¥109.0 -
UG NX 12.0数控编程
¥24.8¥45.0 -
MATLAB计算机视觉与深度学习实战(第2版)
¥90.9¥128.0 -
界面交互设计理论研究
¥30.8¥56.0 -
UN NX 12.0多轴数控编程案例教程
¥25.8¥38.0 -
微机组装与系统维护技术教程(第二版)
¥37.8¥43.0 -
Go 语言运维开发 : Kubernetes 项目实战
¥48.2¥79.0 -
明解C语言:实践篇
¥62.9¥89.8 -
Linux服务器架设实战(Linux典藏大系)
¥84.5¥119.0