第1章 关于这门课,你需要知道的
本章中,将向大家介绍本门课的相关信息,包括你能学到的知识概览、最终项目效果、学习所需的知识储备、课程讲解方式、推荐的学习方法以及未来的更新计划等等。
1-1 课前须知,这里有你需要了解的一切
第2章 [项目启动]ASP.Net Core API 上手指南
工欲善其事,必先利其器。本章中会简单介绍.net core 平台,并开始搭建课程实战项目启动框架。
2-1 [理解].Net Core的前世今生
2-2 [应用]创建实战项目
2-3 [应用]创建实战项目
2-4 [应用].NET Core的中间件、请求通道、以及环境设置
2-5 [应用]添加第一个API
2-6 [理解]MVC架构 与 Web API
2-7 [思考]阶段练习题
第3章 [数据构建]数据模型与数据库设计
本章中,我们会从数据模型的角度设计项目架构,并通过Entity Framework Docker来搭建课程数据库[兼顾Window&Mac,总有一款适合你]。
3-1 [理解]商城数据模型设计
3-2 [理解]数据模型与仓库模式
3-3 [应用]创建数据模型和数据仓库
3-4 [理解]什么是Entity Framework
3-5 [应用]基于docker完成数据库启动
3-6 [选修]Windows家庭版安装Docker
3-7 [应用]添加Entity Framework Core
3-8 [应用]创建数据库
3-9 [应用]添加初始化数据
3-10 [应用]更新数据库
3-11 [选修]启用MySQL数据库
3-12 [思考]阶段练习题
第4章 [API成熟度]通往真正REST的之路
本章会带领大家梳理Restful风格api的相关知识点,理解Restful的成熟度级别,并掌握restful的最佳实践方式
4-1 [理解]hello REST
4-2 [理解]RESTful的6个约束与最佳实践
4-3 [理解]HTTP请求方法与资源交互
4-4 [理解] Richardson成熟度模型与HATOAS
4-5 [思考]阶段练习题
第5章 [获取产品]RESTful面向资源入门
本章将正式进入课程的项目实战开发,从平台的产品模块入手,通过学习使用HTTP GET请求来获取旅游路线。在本章中我们会学习GET请求与Head 请求、HTTP状态码、内容协商、数据模型与DTO的分离,掌握automapper的数据映射技巧。
5-1 [应用]Http Get 获取资源
5-2 [理解]Status Code 的重要性
5-3 [应用]返回正确的 Status Codes
5-4 [理解]内容协商与数据格式
5-5 [应用]实现内容协商
5-6 [理解]数据模型(Model) vs. 数据传输对象(DTO)
5-7 [应用]分离Model与DTO
5-8 [应用]使用 AutoMapper 自动映射数据
5-9 [应用]获取嵌套对象关系型数据
5-10 [应用]单独获取子资源
5-11 [应用]完善automapper的嵌套映射
5-12 [应用]使用http的HEAD请求
5-13 [思考]阶段练习题
第6章 [复合搜索]深入理解GET请求
在本章中我们来学习HTTP GET请求中的数据的搜索与过滤,并掌握Entity Framework 的数据延迟加载技巧Iqueryable。
6-1 [理解]向 API 传入参数
6-2 [应用]关键词搜索
6-3 [理解]延迟执行 IQueryable
6-4 [应用]数据过滤
6-5 [应用]封装资源过滤器
6-6 [思考]阶段练习题
第7章 [新建产品]POST 请求全面剖析
在本章中我们来学习HTTP POST请求来完成产品的创建,并掌握ASP.NET Core中不同级别的数据验证方法
7-1 [理解]幂等与安全
7-2 [应用]创建旅游路线资源 试看
7-3 [应用]创建子资源:旅游路线图片
7-4 [应用]同时创建父子资源
7-5 [理解]ASP.NET Core 的数据验证
7-6 [应用]添加数据验证
7-7 [应用]属性级别数据验证
7-8 [应用]类级别数据验证
7-9 [应用]输出状态码 422
7-10 [思考]阶段练习题
第8章 [更新产品]PUT vs POST
在本章中我们来完成产品数据的更新,比较并掌握数据的两种更新方法:1. 通过HTTP PUT请求进行完整更新;2. 通过使用PATCH请求来进行数据的局部更新。
8-1 [理解]PUT vs. PATCH
8-2 [应用]使用put请求更新资源
8-3 [应用]PUT请求的数据验证
8-4 [理解]资源的局部更新
8-5 [应用]使用PATCH部分更新资源
8-6 [应用]PATCH请求的数据验证
8-7 [思考]阶段练习题
第9章 [删除产品]解读http Delete
本章中我们来通过学习HTTP DELETE请求实现产品的删除。
9-1 [应用]删除资源
9-2 [应用]删除嵌套子资源
9-3 [应用]批量删除资源
第10章 [项目重构]走进异步编程的世界
本章中我们会结合实例展示异步编程在后端api中的重要性,详细讲解c#中异步操作的语法结构,带领同学们使用异步的方式重构项目。
10-1 [理解]hello 异步
10-2 [理解]C#的异步async await
10-3 [应用]项目重构异步模式
10-4 [思考]阶段练习
第11章 [单点登录]JWT与用户身份验证
本章将会实现实战项目的用户系统,完成单点登录系统,通过使用JWT来搭建项目的无状态登陆服务,帮助同学们熟练掌握.Net Core的身份认证框架Identity,并实现用户数据库的自动更新。
11-1 [理解]JWT原理剖析
11-2 [理解]JWT与单点登录实例解释
11-3 [应用]启用无状态登陆系统(模拟用户登陆)
11-4 [应用]启动API授权
11-5 [应用]添加用户角色
11-6 [应用]用户模型设计与数据库更新
11-7 [应用]用户注册
11-8 [应用]用户登陆
11-9 [应用]定制用户模型并添加初始化用户数据
11-10 [思考]阶段练习
第12章 [购物系统从0到1]功能完整的购物车开发
在本章中,我们将会综合运用前面所学到的知识,完成项目的购物车系统
12-1 [理解]开发概要与接口设计
12-2 [应用]购物车模型设计与数据库更新
12-3 [应用]获得当前用户的购物车
12-4 [应用]向购物车加入商品
12-5 [应用]从购物车删除商品
12-6 [应用]从购物车批量删除商品
12-7 [思考]阶段练习
第13章 [购物系统从0到1]极简主义的订单系统
在本章中,我们将会综合运用前面所学到的知识,完成项目订单系统。
13-1 [理解]开发概要与接口设计
13-2 [应用]订单模型开发与数据库更新
13-3 [理解]订单的有限状态
13-4 [应用]使用Stateless实现订单状态机
13-5 [应用]购物车下单、结算
13-6 [应用]获得用户订单
13-7 [应用]模拟支付
13-8 [思考]阶段练习
第14章 [RESTful技能进阶]数据分页显示
从本章开始,课程就进入了进阶内容。在本章中,我们将会学习如何以restful的风格完成输出旅游路线搜索的分页显示功能。
14-1 [理解]分页与项目架构浅析
14-2 [应用]完成简单分页
14-3 [应用]分页进阶:模组化
14-4 [应用]复用模组化分页
14-5 [理解]分页导航
14-6 [应用]高端分页:给header添加导航信息
14-7 [思考]阶段练习
第15章 [RESTful技能进阶]数据排序
在本章中,我们将会学习如何动态地给输出的旅游路线数据排序。
15-1 [理解]给列表资源排序
15-2 [应用]数据排序入门
15-3 [理解]属性(Property) 映射服务
15-4 [应用]创建属性(Property) 映射服务
15-5 [应用]映射字典
15-6 [选修]C#参数列表中的this(扩展方法)
15-7 [应用]排序参数的分页导航
15-8 [应用]处理400级别错误信息
第16章 [RESTful技能进阶]数据塑形
在本章中,我们将会学习如何给数据定制化塑形,输出不同颗粒度大小的数据集合,以适应不同的业务需求。
16-1 [理解]什么是数据塑形
16-2 [应用]处理动态类型对象
16-3 [应用]列表数据的塑形
16-4 [应用]单一资源的塑形
16-5 [应用]处理400级别错误
第17章 [极致RESTful风格]HATEOAS API的超媒体进化
在本章中,我们将会学习restful的最高级别成熟度等级,HATOEAS。通过实现api的自我发现机制,重构课程实战项目,并实现对不同的媒体类型的支持,完成api版本的控制。
17-1 [理解]不要被名字吓到的HATEOAS
17-2 [应用]使用HATOEAS处理单一资源
17-3 [应用]在POST请求中复用创建link组件
17-4 [应用]使用HATOEAS处理列表资源
17-5 [应用]给项目添加API根文档
17-6 [理解]媒体类型
17-7 [应用]HATOEAS与请求媒体类型
17-8 [应用]供应商特定媒体类型
17-9 [思考]阶段练习
第18章 [项目上线]容器化、测试、和部署
在本章中,我们将会学习如何使用docker来进行项目的容器化部署,并使用阿里云容器化服务来部署到服务器
18-1 章节总览与部署方案
18-2 部署到IIS服务器
18-3 容器化部署.NET Core API
18-4 容器化部署阿里云ECS
18-5 课程总结
18-6 [思考]阶段练习
评论0