作者:享学课堂老顾
一、前言
这篇文章中我们来了解一下JWT是何方神圣?以及JWT来实现分布式Session。
二、JWT是什么
JWT一看就是简称,它的全称JSON Web Token,从字面上我们看出1、数据是JSON格式
2、用于Web应用
3、是一个Token,也就是一个令牌方式
看看官方的说明,它定义了一种紧凑且自包含的方式,用于在各方之间以JSON对象进行安全传输信息。这些信息可以通过对称/非对称方式进行签名,防止信息被串改。紧凑的含义:就是JWT比较小,数据量不大,可以通过URL、POST参数或Header请求头方式进行传输。
自包含的含义:jwt可以让用户自定义JWT里面包含的用户信息,如:姓名、昵称等(不要放隐密的信息)。从而避免了多次查询数据库。
三、JWT数据结构JWT由三个部分组成1、Header
2、Payload
3、Signature三者组合在一起
Header.Payload.Signature案例
看上去是不是满乱,我们来依次看下里面的结构。
四、Header
这个是JWT第一段数据,表示头部信息,主要的作用是描述JWT的元数据,上面的案例就是:{
alg: 'HS256',