收藏

Node.js+Koa2+MySQL 打造前后端分离精品项目《旧岛》

“七月”老师出品,带你打造适配小程序、Web与App的服务端,掌握能快速在实际工作中应用的“就业利器”

Node.js+Koa2+MySQL打造前后端分离精品项目《旧岛》

特惠价
¥119
原价¥366.00
已完结 难度 中级 时长 21小时40分钟 学习人数 2213 综合评分 9.99
  • 第1章 【导学】从0到1手把手教你用Node.js KOA2打造超好用的 Web框架 试看 5 节 | 48分钟

    如何理解Node.js?前端到底要不要学习Node.js?本课程能让你学到什么?(项目配套前端教程https://coding.imooc.com/class/251.html 购买即得 PSD高清设计图, 前端配套源码 , 永久享受讲师答疑服务)

    收起列表

    • 视频: 1-1 纯正商业级应用 Node.js Koa2开发微信小程序服务端-导学 (20:14) 试看
    • 视频: 1-2 异步、JavaScript特性与NodeJS (16:02)
    • 视频: 1-3 申请AppKey (01:03)
    • 视频: 1-4 旧岛小样业务分析 (08:16)
    • 视频: 1-5 课程维护及更新说明 (02:19)
  • 第2章 【深入理解KOA】Koa2的那点事儿与异步编程模型 9 节 | 105分钟

    Koa非常的精简,基本上,没有经过二次开发的Koa根本“不能”用。本章我们讲解Koa的重要特性,理解什么是洋葱模型?以及在KOA中如何进行异步编程?很多同学都了解以上知识点,但听完本章,你会有一些不一样的理解,比如:为什么要有洋葱模型?没有会怎样?Koa中间件一定是异步的吗? ...

    收起列表

    • 视频: 2-1 软件与环境(新手看,老鸟跳过) (09:57)
    • 视频: 2-2 node一小步,前端一大步 (08:31)
    • 视频: 2-3 KOA的精简特性与二次开发必要性分析 (12:22)
    • 视频: 2-4 模块加载、ES、TS、Babel浅析 (12:32)
    • 视频: 2-5 KOA的中间件 (12:59)
    • 视频: 2-6 洋葱模型 (07:31)
    • 视频: 2-7 强制Promise (03:28)
    • 视频: 2-8 深入理解async和await (21:22)
    • 视频: 2-9 为什么一定要保证洋葱模型? (15:24)
  • 第3章 【让KOA更加好用】路由系统的改造 7 节 | 74分钟

    Koa-router需要进行一些改造才好用。比如多router拆分文件,使用requireDirectory进行自动路由加载。只有做出一系列的调整,才能让KOA更加好用。

    收起列表

    • 视频: 3-1 路由系统 (18:23)
    • 视频: 3-2 服务端编程必备思维:主题与模型划分 (08:41)
    • 视频: 3-3 多Router拆分路由 (15:30)
    • 视频: 3-4 nodemon自动重启Server (05:38)
    • 视频: 3-5 vscode+nodemon调试配置 (03:41)
    • 视频: 3-6 requireDirectory实现路由自动加载 (12:05)
    • 视频: 3-7 初始化管理器与Process.cwd (09:31)
  • 第4章 【深入浅出讲异常】异步异常与全局异常处理 8 节 | 103分钟

    很多同学都知道try catch来抛出异常,但异常是需要链式来处理的。而在异步中处理异常链条又和同步是不太一样的。此外,框架的全局异常处理又是非常的重要的,本章,我们将学习异常与全局异常的那些事儿。

    收起列表

    • 视频: 4-1 参数获取与LinValidator校验器 (18:35)
    • 视频: 4-2 异常理论与异常链 (18:57)
    • 视频: 4-3 异步异常处理方案 (14:42)
    • 视频: 4-4 全局异常处理中间件编写 (12:53)
    • 视频: 4-5 已知错误与未知错误 (10:26)
    • 视频: 4-6 定义异常返回格式 (09:05)
    • 视频: 4-7 定义HttpException异常基类 (08:03)
    • 视频: 4-8 特定异常类与global全局变量 (09:28)
  • 第5章 LinValidator校验器与Sequelize Orm生成MySQL数据表 9 节 | 129分钟

    Koa本身是不提供校验器的,第三方插件也没有。那么我们只能自己来写一个Validator。本章,我们将学习LinValidator这个好用的校验器,帮助大家快速构建验证层。此外,本章节也会重点讲解Sequelize的配置、初始化等知识

    收起列表

    • 视频: 5-1 Lin-Validator使用指南 (17:57)
    • 视频: 5-2 Lin-Validator获取HTTP参数 (14:18)
    • 视频: 5-3 配置文件与在终端显示异常 (07:13)
    • 视频: 5-4 关系型数据库与非关系型数据库 (新手看,老鸟跳过) (11:57)
    • 视频: 5-5 Navicat管理MySQL (新手看,老鸟跳过) (10:26)
    • 视频: 5-6 Sequelize初始化配置与注意事项 (07:57)
    • 视频: 5-7 User模型与用户唯一标识设计探讨 (17:36)
    • 视频: 5-8 Sequelize个性化配置与数据维护策略 (19:49)
    • 视频: 5-9 LinValidator综合应用 (20:43)
  • 第6章 【构建用户身份系统】通用用户系统与小程序用户系统 8 节 | 84分钟

    任何一个系统都离不开用户这个模块。那么在KOA中如何构建用户系统?用户的权限又应该如何来分配和管理?如何标识一个用户?令牌如何使用?Sequelize如何查询和新增数据?

    收起列表

    • 视频: 6-1 用户注册与Sequelize新增数据 (21:17)
    • 视频: 6-2 中间件只在应用程序启动时初始化一次 (05:10)
    • 视频: 6-3 盐与密码加密的小知识 (06:27)
    • 视频: 6-4 模型的set操作 (06:46)
    • 视频: 6-5 Success操作成功处理 (05:25)
    • 视频: 6-6 isOptional校验 (13:11)
    • 视频: 6-7 模拟枚举 (11:51)
    • 视频: 6-8 验证用户账号密码 (13:05)
  • 第7章 【主流的用户身份识别方式与权限控制】JWT令牌与Auth权限控制中间件 7 节 | 76分钟

    令牌已经是现在主流的用户身份识别的方式与机制了。本章我们讲重点讲解JWT令牌、小程序的用户身份鉴权机制。此外,如何对API进行权限控制也是本章中我们需要讨论的话题。

    收起列表

    • 视频: 7-1 jsonwebtoken (06:48)
    • 视频: 7-2 HttpBasicAuth传递令牌 (13:43)
    • 视频: 7-3 验证JWT令牌 (10:05)
    • 视频: 7-4 API权限分级控制 (09:34)
    • 视频: 7-5 小程序openid登录系统 (11:04)
    • 视频: 7-6 微信鉴权、openid与unionid (14:57)
    • 视频: 7-7 根据openid创建微信用户 (09:38)
  • 第8章 使用Lin-UI与在小程序中使用npm 8 节 | 116分钟

    由于需要小程序的openid,所以所有接口都不能从PostMan中调试,我们需要编写一个简单的小程序测试工具,用来测试带权限的接口。本章我们将看到如何使用小程序openid构建用户系统,如何从小程序中携带JWT令牌。

    收起列表

    • 视频: 8-1 Lin-UI组件库安装 (14:28)
    • 视频: 8-2 在小程序中登录 (11:05)
    • 视频: 8-3 Token Verify接口 (13:55)
    • 视频: 8-4 数据库设计的好思路(实体表与业务表) (18:40)
    • 视频: 8-5 Music、Sentence、Movie模型定义 (17:19)
    • 视频: 8-6 Flow模型与导入SQL数据 (15:09)
    • 视频: 8-7 在小程序中携带令牌 (08:34)
    • 视频: 8-8 Sequelize模型的序列化 (16:43)
  • 第9章 点赞业务的实现 7 节 | 87分钟

    本章我们将实现点赞的API接口。对于点赞来说比较难的是如何保持数据的一致性,那么我们可以使用数据库的事务来确保多表插入数据时的一致性。

    收起列表

    • 视频: 9-1 点赞业务逻辑分析与模型设计 (08:00)
    • 视频: 9-2 数据库事务的基本概念 (08:29)
    • 视频: 9-3 点赞业务逻辑实现 (25:14)
    • 视频: 9-4 LinValidator的alias别名_01 (11:19)
    • 视频: 9-5 使用module-alias别名简化require路径 (08:07)
    • 视频: 9-6 Sequelize Scope的应用 (14:26) 试看
    • 视频: 9-7 获取上一期和下一期的期刊信息 (10:37)
  • 第10章 面向对象与MySQL in 查询 6 节 | 104分钟

    本章我们将谈谈面向对象的实例与静态的区别,什么时候应该设计静态方法,什么时候又应该设计实例方法?此外,我们将重点讲解My SQL的in 查询。

    收起列表

    • 视频: 10-1 获取期刊点赞信息 (30:56)
    • 视频: 10-2 修复上小节Type的问题 (14:27)
    • 视频: 10-3 避免循环查询数据库 (13:24)
    • 视频: 10-4 in查询避免循环查询数据库 (18:39)
    • 视频: 10-5 面向对象设计谈:静态与实例 (20:30)
    • 视频: 10-6 小心循环导入 (05:05)
  • 第11章 MySQL group分组查询与JS并发原理 6 节 | 86分钟

    本章我们将开始Book模块的接口编写。在这些业务中,我们将重点讲解group分组查询的使用原则。同时,在本章中,我也将和大家聊聊JS的一些并发原理以扩展大家的知识视野

    收起列表

    • 视频: 11-1 热门书籍数据表设计 (17:57)
    • 视频: 11-2 并发、并行,单线程的JS为什么可以高并发? (16:41) 试看
    • 视频: 11-3 MySQL group分组查询 (17:44)
    • 视频: 11-4 获取热门图书列表 (07:39)
    • 视频: 11-5 从鱼书服务获取图书详情数据 (12:14)
    • 视频: 11-6 浅谈中间层和微服务 (13:34)
  • 第12章 KOA、Sequelize多层级JSON序列化 8 节 | 89分钟

    在KOA中如何隐藏字段、添加字段、自由序列化?本章节将讲解灵活序列化的方式

    收起列表

    • 视频: 12-1 图书搜索 (16:22)
    • 视频: 12-2 书籍点赞情况和我喜欢数据的数量接口实现 (14:44)
    • 视频: 12-3 新增短评和短评+1接口实现 (13:52)
    • 视频: 12-4 获取短评接口实现 (06:58)
    • 视频: 12-5 JavaScript中的JSON序列化控制 (11:38)
    • 视频: 12-6 全局控制Model模型JSON序列化行为(上) (07:57)
    • 视频: 12-7 全局控制Model模型JSON序列化行为(下) (09:51)
    • 视频: 12-8 Model上不要定义构造函数,否则会出错 (06:51)
  • 第13章 【无感知刷新、获取令牌、登陆等】前后端对接 7 节 | 90分钟

    我们将对接《纯正商业应用-微信小程序实战》课程中的《旧岛》小程序,并调整原有小程序代码 实现无感知刷新、获取令牌、登录等操作

    收起列表

    • 视频: 13-1 小程序如何实现无感知刷新令牌? (08:50)
    • 视频: 13-2 坑!坑!坑!Model中禁止使用构造函数 (12:11)
    • 视频: 13-3 短评修复 (09:43)
    • 视频: 13-4 KOA静态资源 (14:12)
    • 视频: 13-5 image完整路径方案探讨 (17:55)
    • 视频: 13-6 静态资源存储方案探讨 (11:00)
    • 视频: 13-7 access_token和refresh_token双令牌保证无感知登录 (15:14)
  • 第14章 项目部署指南 2 节 | 32分钟

    本章,我们将重点讲解应用部署的相关知识和流程

    收起列表

    • 视频: 14-1 部署指南与小程序云开发探讨 (25:47)
    • 视频: 14-2 守护进程与PM2 (06:02)
  • 第15章 关于Lin CMS和现代大型Web架构思想 6 节 | 85分钟

    本章,我们将重点讲解Lin CMS的功能和开发注意事项,并给大家讲解现代大型Web架构

    收起列表

    • 视频: 15-1 基于前后端分离架构的Lin-CMS (14:29)
    • 视频: 15-2 Lin UI使用注意事项 (10:40)
    • 视频: 15-3 Lin CMS的两种建立API模式 (10:43)
    • 视频: 15-4 Lin CMS三种粒度的组件化支持:插件、业务组件与基础组件 (14:14)
    • 视频: 15-5 Lin CMS权限与结束语 (09:20)
    • 视频: 15-6 现代大型Web架构讲解 (24:41)
本课程已完结

试看

全部试看小节



讲师

7七月 全栈工程师

十年研发及团队管理经验,对程序员面临的各种问题深有体会;精通Python、Java、Node.js、JavaScript等语言,对Web的基础研发、高并发处理与分布式有非常深入的理解。课程讲解深入浅出,极为擅长培养学生的编程思维。

讲师其他课程

课程预览

检测到您还没有关注慕课网服务号,无法接收课程更新通知。请扫描二维码即可绑定
重新观看
意见反馈 帮助中心 APP下载
官方微信

学习咨询

选课、学习遇到问题?

扫码添加指导老师 1V1 帮助你!

添加后老师会第一时间解决你的问题