JWT 解码
在线解码 JWT Token 的 Header 和 Payload
粘贴 Token 后点击「解码」
什么是 JWT 解码?
JWT(JSON Web Token)是一种轻量级的、基于 JSON 的开放标准(RFC 7519),用于在各方之间安全地传递信息。它由三部分组成:Header(头部,声明算法和类型)、Payload(负载,包含声明数据)和 Signature(签名,用于验证 Token 完整性)。三部分之间用 . 分隔,Header 和 Payload 部分采用的是 Base64Url 编码的 JSON 格式。
JWT 在现代 Web 开发中被广泛用于身份认证和授权场景——用户登录后服务端签发 JWT Token,前端后续每次请求都在 Header 中携带这个 Token 来证明身份。由于 JWT 是无状态的(服务端不需要保存 Session),它在分布式系统和微服务架构中尤其受欢迎。IqsBot JWT 解码工具可以帮助开发者快速解析 JWT Token 的内容,查看其中的 Header 和 Payload 信息。
为什么需要 JWT 解码工具?
在日常开发和调试过程中,经常需要查看 JWT Token 中的内容:
- 接口调试:API 返回 401 或 403 错误时,解码 JWT 查看 Payload 中的用户角色、过期时间等信息,快速定位权限问题
- Token 过期排查:检查 JWT Payload 中的
exp(过期时间)和iat(签发时间)字段,确认 Token 是否已过期 - 学习与教学:初学者通过解码真实 JWT 来直观理解其内部结构,比阅读文档更加深刻
- 跨端联调:前端和后端开发人员可以通过共享解码结果来确认 Token 中包含了正确的声明信息
- 第三方登录调试:对接 Google、GitHub 等 OAuth 登录时,查看返回的 ID Token 内容验证用户身份信息
使用 IqsBot JWT 解码工具,你可以立即解析 JWT Token 的 Header 和 Payload 部分。
相比其他在线 JWT 工具,IqsBot 的核心优势是纯浏览器端运行——你的 Token 数据不会上传到任何服务器,完全在本地处理。对于含有敏感信息的 JWT(如用户 ID、邮箱、权限角色等),这一点尤为重要。注意:本工具仅做 Base64Url 解码查看内容,不验证签名有效性——这是调试场景下的合理做法。
如何使用 IqsBot JWT 解码工具
基础用法
- 粘贴 JWT Token:将完整的 JWT 字符串(三段式,用
.分隔)粘贴到输入框中 - 点击「解码」:工具会自动将 Header 和 Payload 从 Base64Url 解码为可读的 JSON 格式
- 查看结果:分别展示 Header(算法信息)、Payload(声明数据)和 Signature(签名串)
高级功能
- 分段展示:将 JWT 的三个部分(Header / Payload / Signature)分区独立展示,结构清晰
- JSON 格式化:解码后的 JSON 数据自动缩进格式化,方便阅读
- 逐块复制:每个区块都有独立的「复制」按钮,也可以一键复制全部解码结果
- 示例 Token:提供内置示例 Token,方便首次使用者快速体验
- 错误提示:当输入不是有效的 JWT 格式时,会明确提示错误原因
使用示例
示例1:解码认证 Token
假设你在调试一个 Web 应用的认证问题,从浏览器 DevTools 中拿到了以下 JWT Token:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IlRvb2xUaXAgVXNlciIsImlhdCI6MTUxNjIzOTAyMiwicm9sZSI6ImFkbWluIn0.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
粘贴到输入框并点击「解码」后得到:
Header:
{
"alg": "HS256",
"typ": "JWT"
}
Payload:
{
"sub": "1234567890",
"name": "ToolTap User",
"iat": 1516239022,
"role": "admin"
}
从中可以看到该 Token 使用 HS256 算法签名,用户角色为 admin。
示例2:检查 Token 是否过期
解码后在 Payload 中查找关键字段:
iat: 1516239022(2018-01-18 签发)- 如果存在
exp字段,对比当前时间戳判断是否已过期
如果 Token 已过期,说明 401 错误是因为 Token 失效而非权限不足,应引导用户重新登录。
常见问题
Q: 这个工具会验证 JWT 签名吗?
A: 不会,也不应该。 本工具的设计目的是调试和查看内容,因此只做 Base64Url 解码来还原 Header 和 Payload 的可读内容。签名验证需要服务端的密钥才能完成,而密钥不应该暴露到客户端工具中。在生产环境中,签名的验证必须由服务端完成。
Q: JWT 的三个部分分别代表什么?
A: Header 包含元数据(使用的算法如 HS256/RS256 和 Token 类型 JWT);Payload 包含实际的声明数据(用户 ID、角色、过期时间等自定义字段);Signature 是用密钥对 Header+Payload 计算出的哈希签名,用于防止 Token 被篡改。
Q: 解码后的数据安全吗?能看到密码吗?
A: JWT 的 Payload 只是 Base64 编码(非加密),任何人都可以解码查看内容。但这也意味着绝对不要在 JWT 中放入敏感信息(如密码、身份证号、银行卡号)。如果看到 Token 中包含了这些信息,这是一个安全隐患,应当联系后端修改。
Q: 支持哪些 JWT 签名算法的解码?
A: 本工具可以解码所有 JWT Token 的 Header 和 Payload 部分,无论它使用的是 HS256、RS256、ES256 还是其他任何算法——因为这些部分的格式是统一的。签名算法的信息会在 Header 中正确显示。
Q: 我的数据会上传到服务器吗?
A: 绝对不会。JWT 解码完全在浏览器本地通过 atob() 和 JSON.parse() 完成,Token 字符串不会离开你的设备。