如何解码 JWT
- 把令牌粘贴到文本框中。从 Authorization 请求头复制时开头带上的
Bearer会被自动去掉。 - 头部和载荷会被解码,并以格式化的 JSON 显示。
exp(过期时间)和iat(签发时间)等时间会转换为易读的日期,你可以一眼看出令牌是否已经过期。
什么是 JSON Web Token?
JWT 是一种紧凑的令牌,用于登录和 API 访问。它由三个用点分隔的部分组成:标明签名算法的头部(header)、包含用户或会话相关声明的载荷(payload),以及签名(signature)。头部和载荷只是经过 Base64url 编码,并没有加密,因此任何持有令牌的人都能读取它们。
标准声明
iss:令牌的签发人sub:令牌所涉及的主体,通常是用户 IDaud:令牌的预期接收方exp、nbf、iat:过期时间、生效时间(在此之前无效)和签发时间,均为 Unix 时间戳(参见 Unix 时间戳转换)
常见问题
把令牌粘贴到这里安全吗?
令牌在你的浏览器中解码,绝不会发送到任何地方。不过,有效的令牌在过期之前就相当于密码,因此请避免把真实的生产环境令牌分享给任何人。
可以把机密信息放进 JWT 吗?
不可以。任何持有令牌的人都能读取载荷。载荷中只应放标识符和权限,绝不要放密码或你不希望泄露的个人数据。