如何在不使用库的情况下在javascript中解码jwt令牌?

如何使用JavaScript解码JWT的有效负载?没有图书馆。因此,令牌仅返回可由我的前端应用程序使用的有效负载对象。


令牌示例: xxxxxxxxx.XXXXXXXX.xxxxxxxx


结果是有效负载:


{exp: 10012016 name: john doe, scope:['admin']}


ITMISS
浏览 792回答 3
3回答

开满天机

起作用的Unicode文本JWT解析器功能:function parseJwt (token) {    var base64Url = token.split('.')[1];    var base64 = base64Url.replace(/-/g, '+').replace(/_/g, '/');    var jsonPayload = decodeURIComponent(atob(base64).split('').map(function(c) {        return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);    }).join(''));    return JSON.parse(jsonPayload);};

牛魔王的故事

您可以使用jwt-decode,因此可以编写:import jwt_decode from 'jwt-decode';var token = 'eyJ0eXAiO.../// jwt token';var decoded = jwt_decode(token);console.log(decoded);/*{exp: 10012016 name: john doe, scope:['admin']}*/
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript