服务端生成JWT Token返回给客户端,那么JWT Token在服务端需要保存吗?

服务端生成JWT Token返回给客户端,那么JWT Token在服务端需要保存吗?
如果需要保存,那么保存在什么地方?

阅读 15.1k
6 个回答

不需要保存,客户端保存token,每次请求带上这个token,服务端收到JWT token之后要验证token的签名,看这个token是不是自己颁发的。

jwt里是存有数据的,你把用户名uid存在jwt里不久知道是那个用户了吗?
麻烦你先弄清楚jwt是怎么回事再来提问

token不需要保存,但是要保存一份密钥用来验证token是不是有效的

token不需要保存在服务端,只需要在客户端保存,比如用localStorage保存token,客户端每次请求时带上token,服务端会自行校验

jwt里带有数据, 后端无需保存, 前端接口请求带此token, 后台通过秘钥(后端自行保存)解析token校验合法性

新手上路,请多包涵

JWT 相比传统token authentication的好处就是不再需要后端保存token。省去了数据库query的成本。前端在将用户名密码的组合传给后端后,后端会进行验证。如果收到的信息可以定位出用户,那么会生成一个用base64加密的包含三段内容的token。第一段是header,用来说明加密方式,第二段是传递回来的用户信息,一般是id或者uuid。第三段是验证信息,确保这个token是被后端签发的。之后前端在进行任何请求的时候,要将这个token附在header里发送给后端。

更多关于JWT的实现原理,可以参考这个网站。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进