Javascript 用于在客户端解码JWT的库
我正在一个网站上工作,该网站在cookies中存储JWT令牌。我想做的是,创建Javascript来解码令牌并提取我需要的值,然后将其传递给我的同事编写的另一个Javascript。我的问题是,是否有可以从脚本导入的用于JWT令牌解码的客户端javascript库 JWT只是一个点分隔的base64编码字符串。您只需要在点上拆分,然后使用atob()进行解码。您不需要外部库 e、 gJavascript 用于在客户端解码JWT的库,javascript,jwt,Javascript,Jwt,我正在一个网站上工作,该网站在cookies中存储JWT令牌。我想做的是,创建Javascript来解码令牌并提取我需要的值,然后将其传递给我的同事编写的另一个Javascript。我的问题是,是否有可以从脚本导入的用于JWT令牌解码的客户端javascript库 JWT只是一个点分隔的base64编码字符串。您只需要在点上拆分,然后使用atob()进行解码。您不需要外部库 e、 g :jwt decode是一个小的浏览器库,用于帮助解码Base64Url编码的JWTs令牌。检查此项:查找Jav
:jwt decode是一个小的浏览器库,用于帮助解码Base64Url编码的JWTs令牌。检查此项:查找Javascriptsection@MikeCheel如果需要验证签名的JWT或解码加密的JWT,则的注释非常有用。但是如果你只是想读一个未加密的JWT,你只需要按照Bhspencer的回答中描述的base64解码它。谢谢,但我想它不会与UTF一起工作,是吗?@user30646这是缺少验证的。你应该验证JWT,任何人都可以创建它们,但只有知道秘密的人才能创建一个用秘密签名的令牌。OP问“我想做的是,创建Javascript来解码令牌并提取我需要的值”。当然,还需要验证令牌上的签名,但这超出了本问题的范围。
var jwt = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ";
var tokens = jwt.split(".");
console.log(atob(tokens[0]));
console.log(atob(tokens[1]));