简述
- JWT就是通过一定规范来生成token,然后可以通过解密算法逆向解密token,这样就可以获取用户信息
- JWT存储在客户端,不占用服务端的内存资源
- token是经过base64编码,所以可以解码,因此token加密前的对象不应该包含敏感信息,如用户权限,密码
JWT格式组成
header+payload+signature
- 头部:主要是描述签名算法
- 负载:主要描述是加密对象的信息,如用户的id等,也可以加些规范里面的东西,如iss签发者,exp 过期时间,sub 面向的用户
- 签名:主要是把前面两部分进行加密,防止别人拿到token进行base解密后篡改token
存储
可以存储在cookie,localstorage和sessionStorage里面