楼主对jwt的理解差之千里了吧.
1:JWT可以理解为一种特殊结构的TOKEN, 它最大的特点是“内含信息”,整个token不只是一个随机的字符串,而是可以加上姓名,编号,性别,甚至你的权限。
2:为什么JWT要这么做,我用随机字符串,然后再去数据库或者redis查一道不香吗! JWT一般都是用于接口,这个访问量是巨大的,每次都去查库,性能会受影响。(可以思考下,为什么redis性能不错,也会有影响呢!)
3:那么一般的设计就很清楚了 token(jwt) + refresh_token , 因为token(jwt)自己内含全部的验证数据,如果丢失就麻烦大了,所以有效期一定要尽可能短一些,比如5分钟。过期后,就用refresh_token 去刷新一下,获取新的token。 (refresh_token 因为是偶尔使用一次,用在MYSQL里查库或者redis,都比较稳当了)
---------------------------
补充:为什么要refresh_token去刷新,是因为token频繁传输,容易被窃取,refresh_toke则只有刷新token的时候使用一次,用完一次就报废了。

IP属地:湖北