JWT 解码器
粘贴 JSON Web Token,即可以格式化 JSON 查看其头部和载荷。exp、iat 和 nbf 等时间戳会转换为易读日期,过期令牌会被标出。
JWT 的结构
JWT 由点号分隔的三部分组成:header.payload.signature。头部和载荷是使用无填充 Base64URL 编码的 JSON 对象。签名使用头部中指定的算法(alg,例如 HS256 或 RS256)对前两部分计算得出。
注册声明
| 声明 | 含义 |
|---|---|
iss | 签发者 |
sub | 主题(通常为用户 ID) |
aud | 受众 |
exp | 过期时间(自 1970 年起的秒数) |
nbf | 此前无效 |
iat | 签发时间 |
jti | 令牌唯一 ID |
用 JavaScript 解码 JWT
const [h, p] = token.split('.');
const json = (s) => JSON.parse(new TextDecoder().decode(
Uint8Array.from(atob(s.replace(/-/g, '+').replace(/_/g, '/')), (c) => c.charCodeAt(0))));
console.log(json(h), json(p)); 常见问题
在这里粘贴我的 JWT 安全吗?
解码完全在您的浏览器中进行,不会向服务器发送任何数据。尽管如此,生产环境的令牌仍应视为机密。
解码时会验证签名吗?
不会。JWT 只是 Base64URL,任何人都能解码。验证签名需要密钥或公钥,必须由您的服务器完成。
评论 (0)
对“JWT 解码器”有疑问、想法或发现了 bug?欢迎留言评论、为工具评分或回复他人。
暂无评论,快来分享您的反馈吧!