리액트에서 날린 JWT토큰 스프링부트에서 검증 후 decode하기 (백엔드, 프론트엔드)

작성자 : 조회수 :


리액트에서 구글 로그인 API를 적용 후 올바른 로그인이 완료 됐을 때

참고 : https://www.ybloglab.shop/auth/skillboard/details/34



[Basichttp 가 아닌 Bearer식 전송]

 

헤더에 Authorization Bearer + 토큰 값을 백엔드 쪽에 보냅니다.



검증에 성공하든 하지 않든 디코드한 토큰 결과값을 DecodedJWT 객체에 담아서 리턴해줍니다.



위 코드에서 아까 프론트쪽에서 담아놨던 Header Authorization 키의 값을 가져옵니다.

 

그리고 Bearer을 잘라서 토큰을 검증합니다.

 

검증되고 디코드 된 verify base64 형식이기 때문에 한번 더 Decode 해줍니다.

 

저는 로그인한 사용자의 아이디를 가져오고 싶기 때문에 JWT payload값을 디코드 한 것 입니다.


Base64로 인코딩 하는 것은 라이브러리가 따로 필요 없었지만

 

 

디코딩 하는데에는 아래 라이브러리가 필요했습니다.


implementation group: 'commons-codec', name: 'commons-codec', version: '1.15'



의존성을 추가해주면 되겠습니다.

 

 

결과는 아래와 같습니다.

 

value값은 보여줄수 없지만 key값만으로도 올바르게 base64가 문자열로 잘 디코드 된 것을 알 수 있었습니다