JWT Decode 에러: binascii.Error: Incorrect padding

햄스터아저씨·2023년 5월 1일
0

JWT 는 보통 client가 server에게 자신의 요청을 검증하기 위해 사용한다.

반대로 client가 server의 응답을 확인하는 로직을 JWT로도 구성해 봤는데, 이 때 아래와 같은 에러가 발생하였다.

if response.status_code == 200:
    print(response.text)
    server_payload = jwt.decode(response.text, secret, algorithms=['HS256'])

# 위 코드에서 아래에러 발생
raise DecodeError("Invalid crypto padding") from err
inascii.Error: Incorrect padding

찾아보니 response.text는 "aaaa" 형태로 인식되는데, 이 때 (") 까지 들어가는게 문제라고 한다. 그래서 이를 제거하는 replace를 넣어 문제 해결

if response.status_code == 200:
    print(response.text)
    server_payload = jwt.decode(response.text.replace('"',''), secret, algorithms=['HS256'])
profile
서버도 하고 웹도 하고 시스템이나 인프라나 네트워크나 그냥 다 함.

0개의 댓글