后端基础菜鸟中间件补充学习笔记 | 青训营笔记

74 阅读2分钟

这是我参与「第五届青训营 」笔记创作活动的第43天

碎碎念

大项目提交啦,在此先感谢我的各位队友,大家都没有放弃,其次感谢自己一直坚持。青训营中学习到了很多,接近尾声啦,学习不能停下,继续加油~

Day 32 内容安排

中间件学习

  1. 概述
  2. jwt中间件(大项目实际应用)

随记

  • 中间件随记心得吧:

1.中间件是一个函数,嵌入在HTTP的请求和响应之间。它可以获得申请对象用来进行一些特殊的操作,比如记录每个请求或者统计请求数。

2.中间件级别:Root Level (Before router)、Root Level (After router)(用到的jwt中间件在这个类组)、Group Level(当在路由中创建一个组的时候,可以为这个组注册一个中间件)、Route Level(当你创建了一个新的路由,可以选择性的给这个路由注册一个中间件)

3.基于JWT实现认证中间件: 用户通过登录可以生成一个JWT,在用户获取Token之后,后续就会携带着Token再来请求我们的其他接口,这个时候就需要对这些请求的Token进行校验操作了,jwt中间件也可以通过指令从Token获取获取用户名。

4.上述token的意思是“令牌”,是⽤户身份的验证⽅式,最简单的token组成: uid(⽤户唯⼀标识) + time(当前时间戳) + sign(签名,由token的前⼏位+盐以哈希算法压缩成⼀定⻓度的⼗六进制字符串) ,同时还可以将不变的参数也放进token。

(参考文档zhuanlan.zhihu.com/p/361420808)

5.jwt token 的组成部分:1.header: ⽤来指定使⽤的算法(HMAC SHA256 RSA)和token类型(如JWT);2.payload: 包含声明(要求),声明通常是⽤户信息或其他数据的声明,⽐如⽤户id,名称,邮箱等. 声明。可分为三种:registered,public,private;3.signature: ⽤来保证JWT的真实性,可以使⽤不同的算法

总结

  1. 大项目终于结束啦
  2. 还好有在坚持