Files

23 lines
636 B
JavaScript

function jwtDecode(jwt) {
// Source: https://inventivehq.com/blog/how-to-decode-a-jwt
const parts = jwt.split('.');
const header = parts[0];
const payload = parts[1];
const signature = parts[2];
// Base64URL to Base64
function base64UrlToBase64(str) {
return str.replace(/-/g, '+').replace(/_/g, '/');
}
// Decode
const decodedHeader = JSON.parse(atob(base64UrlToBase64(header)));
const decodedPayload = JSON.parse(atob(base64UrlToBase64(payload)));
return {
raw: jwt,
header: decodedHeader,
payload: decodedPayload,
signature: signature
}
}