我使用jwt令牌进行身份验证,并希望在客户端读取有效负载信息。现在我正在做这样的事情:
var payload = JSON.parse(window.atob(token.split('.')[1]));
有没有更好的方法在浏览器中使用jwt令牌?
答案 0 :(得分:18)
来自https://github.com/auth0/jwt-decode
下载.build / jwt-decode.min.js文件并包含在项目中。
<script src="js/jwt-decode.min.js"></script>
var token = 'eyJ0eXAiO.../// jwt token';
var decoded = jwt_decode(token);
console.log(decoded);
答案 1 :(得分:8)
这个简单的解决方案返回原始令牌,标题和有效负载:
function jwtDecode(t) {
let token = {};
token.raw = t;
token.header = JSON.parse(window.atob(t.split('.')[0]));
token.payload = JSON.parse(window.atob(t.split('.')[1]));
return (token)
}