Session与JWT
跳到导航
跳到搜索
基本概念
Session
- 用户登录后,服务端生成会话ID字符串作为凭证。
- 会话ID映射到服务端存储的会话信息(如用户ID、登录时间等)。
- 客户端通过Cookie存储会话ID并传输。
JWT(JSON Web Token)
- 用户登录后,服务端返回自包含的令牌作为凭证。
- 令牌解码后可获取会话信息(如用户ID、签发时间等),并包含签名防篡改。
- 客户端通过
localStorage
或sessionStorage
存储令牌,并通过Authorization
头部传输。
主要区别
对比项 | Session | JWT |
---|---|---|
凭证内容 | 简单ID字符串 | 包含用户信息和签名的自包含令牌 |
传输方式 | 通过Cookie传输 | 通过Authorization 头部传输
|
服务端检测 | 需查询会话存储系统 | 仅验证签名 |
存储位置 | 服务端内存或Redis等系统 | 客户端存储 |