JWT 解码器
解码 JWT 结构、标准声明与过期状态
输入 JWT
解码结果
标准声明
| 声明 | 值 | 说明 |
|---|
使用说明
JWT(JSON Web Token)是前后端分离项目里最常见的登录凭证,由 Header、Payload、Signature 三段 Base64URL 字符串用点号连接而成。它的前两段并不是加密,只是编码,任何人拿到令牌都能直接读出里面的内容,因此把用户 ID、角色、过期时间这类信息放进 JWT 时要格外谨慎。本工具把手工解码的过程搬到了页面上:粘贴令牌,立即得到格式化后的 Header 与 Payload JSON。
除了完整 JSON,工具还会把 alg、typ、iss、sub、aud、jti 等常见声明整理成一张「声明 / 值 / 说明」对照表,exp、iat、nbf 三个时间类声明会同时换算成你所在时区的可读时间,并根据 exp 与当前系统时间给出「未过期(剩余 X 天 X 小时)」或「已过期」的状态提示,排查登录态问题一目了然。需要强调的是:本工具不做签名校验,签名段仅显示长度信息,签名验证必须持有密钥并在服务端完成。所有解析都在你的浏览器本地进行,令牌不会上传到任何服务器。
常见问题
这个工具会校验 JWT 签名吗?
不会。签名校验需要服务端持有密钥(HMAC 密钥或 RSA/ECDSA 公私钥对),浏览器端工具无法安全完成。本工具只做 Base64URL 解码与内容展示,签名段仅显示字符长度;令牌能被解析绝不代表它可信,签名验证必须在自己的服务端进行。
支持哪些令牌?加密的 JWE 能解吗?
支持标准三段式 JWS 格式的未加密 JWT,即常见的 Header.Payload.Signature 结构。JWE(加密令牌,通常为五段式)的内容是密文,没有密钥无法解开,本工具不支持。另外载荷必须是 UTF-8 编码的 JSON,否则会提示解析失败。
过期状态是怎么判断的?为什么可能和服务端结论不同?
工具读取 Payload 中的 exp 声明(秒级 Unix 时间戳),与你电脑的系统当前时间比较后给出剩余或超出时长。如果你本机时间不准、时区显示不同,或服务端另外设置了时钟偏差(leeway),结论可能不一致;此提示仅供调试参考,最终判断请以服务端为准。