session和jwt哪个更好

session和jwt

  • session
    • 优点
    • 缺点
  • jwt
    • 优点
    • 缺点
  • 总结

session

优点

  1. 原理简单,易于学习。
  2. 用户信息存储在服务端,可以快速封禁某个用户。

缺点

  1. 占用服务端内存,硬件成本高。
  2. 多进程,多服务器时,不好同步-需要使用第三方缓存,如redis。
  3. 默认有跨域限制。

jwt

优点

  1. 不占用服务端内存
  2. 多进程,多服务器,不受影响
  3. 无跨域限制

缺点

  1. 用户信息存储在客户端,无法快速封禁某个用户。
  2. 万一服务端密钥被泄露,用户信息全部丢失。
  3. token体积一般大于cookie,会增加请求的数据量。

总结

  1. 如有严格管理用户信息的需求,推荐session。
  2. 如无特殊需求,使用jwt。

参考资料:前端面试第16题:session和jwt

你可能感兴趣的:(前端,前端,java,开发语言)