📚 课程介绍
本课程通过仿制知乎服务端项目,深入讲解RESTful API的设计与实现,涵盖从基础搭建到项目实战的各个环节。
📋 学习前提
1. Node.js基础(了解Node.js的基本语法和运行环境) 2. JavaScript基础(掌握JavaScript的基本语法和数据结构) 3. RESTful API基础(了解RESTful API的设计原则和最佳实践) 4. 数据库基础(了解关系型数据库的基本概念和SQL语句)
📖 课程目录
第1章 学习之前要告诉你的
1-1 关于这门课程你想知道的都在这一节里面了
第2章 跟着 GitHub 认识 RESTful API
2-1 REST 是什么以及它的 6 个限制
2-2 统一接口的限制
2-3 RESTful API 简介
2-4 RESTful API 设计最佳实践
第3章 用 Koa 说 Hello World
3-1 Koa 简介
3-2 安装搭建第一个 Koa 程序
3-3 Koa 中间件与洋葱模型
第4章 Koa 框架的路由与 RESTful API 最佳实践
4-1 路由简介
4-2 自己编写 Koa 路由中间件
4-3 使用 koa-router 实现路由
4-4 HTTP options 方法的作用是什么
4-5 RESTful API 最佳实践——增删改查应该返回什么响应
第5章 Koa 框架的控制器以及设计更合理的目录结构
5-1 控制器简介
5-2 获取 HTTP 请求参数
5-3 发送 HTTP 响应
5-4 更合理的目录结构
第6章 多种方案实现错误处理机制
6-1 错误处理简介
6-2 Koa 自带的错误处理
6-3 自己编写错误处理中间件
6-4 使用 koa-json-error 进行错误处理
6-5 使用 koa-parameter 校验参数
第7章 第一批用户入库啦~~
第8章 JWT 在 Koa 框架中实现用户的认证与授权
8-1 Session 简介
8-2 JWT 简介
8-3 JWT vs. Session
8-4 在 Node.js 中使用 JWT
8-5 实现用户注册
8-6 实现登录并获取 Token
8-7 自己编写 Koa 中间件实现用户认证与授权
8-8 用 koa-jwt 中间件实现用户认证与授权
第9章 项目实战之上传图片模块
9-1 上传图片需求分析
9-2 使用 koa-body 中间件获取上传的文件
9-3 使用 koa-static 中间件生成图片链接
9-4 编写前端页面上传文件
第10章 项目实战之个人资料模块 —— 学习处理复杂数据类型
10-1 个人资料需求分析
10-2 个人资料的 schema 设计
10-3 个人资料的参数校验
10-4 RESTful API 最佳实践——字段过滤
第11章 项目实战之关注与粉丝模块
11-1 关注与粉丝需求分析
11-2 关注与粉丝的 schema 设计
11-3 RESTful 风格的关注与粉丝接口(上)
11-4 RESTful 风格的关注与粉丝接口(下)
11-5 编写校验用户存在与否的中间件
第12章 项目实战之话题模块(足够完整!!)
12-1 话题模块需求分析
12-2 RESTful 风格的话题增改查接口(上)
12-3 RESTful 风格的话题增改查接口(下)
12-4 RESTful API 最佳实践——分页
12-5 RESTful API 最佳实践——模糊搜索
12-6 用户属性中的话题引用
12-7 RESTful 风格的关注话题接口(上)
12-8 RESTful 风格的关注话题接口(下)
第13章 项目实战之问题模块 —— 复杂的数据库设计
13-1 问题模块需求分析
13-2 用户-问题一对多关系设计与实现
13-3 话题-问题多对多关系设计与实现
第14章 项目实战之答案模块 —— 更复杂的数据库设计
14-1 答案模块需求分析
14-2 问题-答案模块二级嵌套的增删改查接口
14-3 互斥关系的赞踩答案接口设计与实现
14-4 RESTful 风格的收藏答案接口
第15章 项目实战之评论模块 —— 最复杂的数据库设计
15-1 评论模块需求分析
15-2 问题-答案-评论模块三级嵌套的增删改查接口
15-3 一级评论与二级评论接口的设计与实现
15-4 添加日期
第16章 丑媳妇终要见公婆:项目上线、部署与配置
16-1 在服务器上安装 Git 与 Node.js
16-2 用 Nginx 实现端口转发
16-3 使用 PM2 管理进程
第17章 使人进步的基石:回顾与总结
17-1 回顾与总结
