개발

[javascript] jwt를 한글 디코딩하기

으아아아앜 2020. 3. 6. 19:56

jwt는 base64 + encodeUri 기반이다.

따라서 한글로 디코딩하기 위해서 아래의 로직 참고

 

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);
};

 

 

참고 : https://stackoverflow.com/questions/38552003/how-to-decode-jwt-token-in-javascript-without-using-a-library