Yasin

Yasin

什么是JWT

JWT = JSON Web Token,一种自包含的令牌格式。

结构(三段 Base64,用 . 分隔):

eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ1c2VyLWlkIiwiZXhwIjoxNzc0MjQxNDAxfQ.签名│─── Header ───────│ │──── Payload ─────────────────────────────────│ │签名│ Header: 算法信息 {"alg": "HS256"} Payload: 数据 {"sub": "user-id", "exp": 过期时间} Signature: 用密钥对前两段签名,防篡改 使用流程:

登录成功 → 服务端用密钥签发 JWT → 放入 httpOnly Cookie → 后续请求自动带 Cookie → 服务端验证签名 + 过期时间 → 得到 userId 关键点:JWT 不加密,只签名。任何人都能 base64 解码看到 payload,但没有密钥就无法伪造。