JWT(JSON Web Token)相比传统的 Session/Token 方案有以下核心优势:

1. 无状态 & 可扩展性

  • 服务端无需存储会话信息,Token 自包含用户身份和权限

  • 天然适合分布式系统和微服务架构,任意服务节点都能独立验证

2. 跨域友好

  • 基于 HTTP Header 传输,不受 Cookie 跨域限制

  • 特别适合前后端分离、移动端、第三方 API 集成等场景

3. 安全性设计

  • 支持签名(HMAC/RSA/ECDSA)防止篡改

  • 可设置过期时间(exp),支持 Token 刷新机制

4. 自包含(Self-contained)

  • Payload 中可携带用户角色、权限等声明信息,减少数据库查询次数

5. 标准化 & 生态成熟

  • 遵循 RFC 7519 标准,各语言均有成熟库支持


适用场景

表格

场景 说明
单点登录(SSO) 多系统共享同一 Token
微服务鉴权 服务间透传用户身份
API 网关 统一入口验证,下游服务无状态
移动端应用 避免 Cookie 依赖

注意事项

JWT 也有其局限性,例如无法主动失效(需配合黑名单或短过期时间+刷新机制)、Payload 默认不加密(敏感信息需额外加密或避免放入),以及 Token 体积相对 Cookie 较大。合理设计下,它仍是现代分布式系统中非常高效的鉴权方案。

更多推荐