Skip to content

Instantly share code, notes, and snippets.

@msteckyefantis
Last active April 24, 2018 02:57
Show Gist options
  • Save msteckyefantis/4d0680695db5c5cfe4119e7d58770ba2 to your computer and use it in GitHub Desktop.
Save msteckyefantis/4d0680695db5c5cfe4119e7d58770ba2 to your computer and use it in GitHub Desktop.
function getDecodedJWTComponents( token ) {
const periodSplitToken = token.split( '.' );
const endcodedJWTHeader = periodSplitToken[0];
const header = getDecodedJWTComponent( endcodedJWTHeader );
const endcodedJWTPayload = periodSplitToken[1];
const payload = getDecodedJWTComponent( endcodedJWTPayload );
return {
header,
payload
};
}
// helper function
function getDecodedJWTComponent( encodedTokenComponent ) {
const tokenComponentAsBuffer = new Buffer( encodedTokenComponent, 'base64' );
const tokenComponentAsString = tokenComponentAsBuffer.toString( 'ascii' );
const decodedTokenComponent = JSON.parse( tokenComponentAsString );
return decodedTokenComponent;
}
@msteckyefantis
Copy link
Author

Related to this article about JWT.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment