简单理解JWT是什么

版权声明:内容版权为CSDN用户:kayseen 所有,若您需要引用、转载,需要注明来源及原文链接 https://blog.csdn.net/m0_43394876/article/details/88313410

先理解他是什么:
Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准,通用性比较好,由header,payload,signature组成

再解释下什么是头部、载荷、签证:
头部用来声明类型和加密算法,载荷用来存储有效信息,签证包括头部 载荷和secret, 这个secret用来签发token和验证token,保存在服务端(比如redis)中 (它是存放在服务端的私钥,校验token也是以secret为依据),(将签发凭证保存到redis中,后续可以持久化的方式进行保存)

jwt的流程:
1.client携带用户名,密码向server发起请求
2.server生成一个token返回给前端,自己在服务器保存一个secret
3.client再次向server发起请求的时候,server会取出请求的头部和载荷进行加密算法得到secret,看结果是否与之前保存的secret一致,这样就可以保证头部和载荷的信息如果被改动,secret肯定不会一致
4.加密之后的secret与之前保存的secret一致, 返回成功的响应

应用场景:
举个例子,比如说我们需要记录用户的登录状态,我们只需要取到用户的name和密码来进行加密校验secret

(本人水平有限,这是本人对jwt的理解,参考要慎重哦)

猜你喜欢

转载自blog.csdn.net/m0_43394876/article/details/88313410