这篇文章是对网络上相关信息的总结,详情可以参考《JSON Web Token 入门教程》
http://www.ruanyifeng.com/blog/2018/07/json_web_token-tutorial.html
使用JWT
JWT作为一道具有过期时间的令牌存储在Cookie或localStorage,与服务器通信时都会捎带上。既可以写在Cookie里,也可以放在HTTP头中,还可以写在具体的请求里。
JWT结构
JWT由3个JSON对象组成,最终的JWT是经过转码(参考Base64)的字符串。
Header
键包括alg(algorithm)与typ(type),指出了签名算法与令牌类型。
Payload
JWT传输的信息,键包括生效时间、过期时间、签发人等。
Signature
在服务器上用密钥生成Header与Payload的签名,防止JWT信息被篡改。
JWT注意事项
- JWT默认不加密,有需要可以加密
- 如果不加密,建议使用HTTPS协议防止被盗用
- JWT有效时长无法更改,不建议设置时间太长