是啥?
1.JWT(json web token) 是为了在网络应用环境间传递声明而执行的基于json的开放标准
image.png
2.经常被用来在服务器和客户端之间认证用户信息
3.因为数字签名的存在,信息是可信的。可以用例如RSA等方式进行签名。
应用场景?
1.用户一旦登陆成功,其每一个请求都会带上JWT,来验证其身份,以及权限。
2.信息交换时带上JWT,确保信息不是伪造的
结构?
使用 . 分隔一下三部分
1.Header 头部 {typ:'JWT',alg:'HS256'} 并且转义成base64
2.Payload 负载 传递信息 {name:'dy',code:'typescript',....} 并且转义成base64
3.Signature 签名 将前面俩部分用header中声明的加密算法签名
image.png
JWT登陆工作流:
1.用户的访问请求带上登录信息
2.服务端校验用户信息
3.服务端提供一个token给客户端
4.客户端存储token,在之后每一次请求中都带着它
5.服务器校验token,正确则返回信息
网友评论