티스토리 뷰

헉!!/ETC

JWT 토큰 Decode 방법

권태성 2024. 11. 22. 21:41

로그 확인 중 바로 JWT 토큰을 Decode해서 특정 값을 확인할 필요가 있어 jwt-decode 패키지를 사용해봤습니다. jwt-decode는 서명을 검증하지않고 단순히 디코딩하기에 단순 디코딩 용도로 사용하는데 적합합니다.

 

jwt-decode는 Node.js 라이브러리입니다. 사용 전 Node.js 설치가 필수입니다.

아래 과정은 Node.js 설치가 된 것을 전제로 합니다.

 

1. 패키지 설치

npm install jwt-decode

 

2. 기본 사용법

const jwtDecode = require('jwt-decode');

// 디코딩할 JWT 토큰
const token = 'your-jwt-token-here';

// JWT 디코드
const decoded = jwtDecode(token);

console.log(decoded);

 

3. 헤더까지 디코드 (옵션 사용)

jwt-decode는 디코딩할 때 옵션으로 헤더 포함 여부를 지정할 수 있습니다.

const jwtDecode = require('jwt-decode');

const token = 'your-jwt-token-here';

// 헤더 포함 디코드
const decodedWithHeader = jwtDecode(token, { header: true });

console.log(decodedWithHeader);

 

 

위와 같이 token을 디코딩하면 아래와 같은 결과를 반환받습니다.

{
  "userId": "1234567890",
  "name": "John Doe",
  "iat": 1516239022
}

 

 

앞서 말씀드렸듯이 서명을 검증하지 않으므로 인증 용도로 사용하면 문제가 발생할 수 있습니다. 반드시 용도에 맞게 사용하길 권장합니다.

728x90