如何使用JavaScript解码JWT的有效负载?没有图书馆。因此,令牌仅返回可由我的前端应用程序使用的有效负载对象。
令牌示例: xxxxxxxxx.XXXXXXXX.xxxxxxxx
xxxxxxxxx.XXXXXXXX.xxxxxxxx
结果是有效负载:
{exp: 10012016 name: john doe, scope:['admin']}
工作的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); };