[python] 인증 토큰 만료 예외 처리하기

인증 토큰 만료 예외 처리하기

인증 토큰은 보안을 위해 일정 기간 후에 만료됩니다. 만료된 토큰으로 서버에 요청을 보내면 인증 오류가 발생할 수 있습니다. 따라서, 이러한 상황에 대한 예외 처리는 매우 중요합니다.

파이썬에서는 requests 라이브러리를 사용하여 웹 요청을 보낼 수 있습니다. 이 예시에서는 requests 라이브러리를 사용하고, 만료된 인증 토큰을 감지하고 처리하는 방법을 알려드리겠습니다.

아래는 예제 코드입니다.

import requests

def send_request(url, token):
    headers = {'Authorization': 'Bearer ' + token}
    response = requests.get(url, headers=headers)
    
    if response.status_code == 401: # 인증 오류 (Unauthorized) 경우
        if 'Token expired' in response.text: # 토큰 만료 여부 확인
            # 토큰 갱신 로직 실행
            refreshed_token = refresh_token()
            headers = {'Authorization': 'Bearer ' + refreshed_token}
            response = requests.get(url, headers=headers)
            
            # 다시 요청 보내기
            return response
        else:
            raise Exception('인증 오류: ' + response.text)
    
    return response

def refresh_token():
    # 토큰 갱신 로직 구현
    # 갱신된 토큰 반환
    pass

# 사용 예시
url = 'https://api.example.com/data'
token = 'expired_token'
response = send_request(url, token)

print(response.text)

위의 코드에서 send_request 함수는 주어진 URL에 인증 토큰을 포함하여 GET 요청을 보냅니다. 만약 응답 상태 코드가 401(Unauthorized)일 경우, 토큰 만료 여부를 확인하고 토큰을 갱신합니다. 그 후에 다시 요청을 보내고 응답을 반환합니다.

이 코드를 사용하면 만료된 인증 토큰으로 인한 오류를 처리할 수 있습니다. refresh_token 함수는 토큰을 갱신하는 로직을 구현해야 합니다.

만약 토큰 갱신에 실패한 경우, 사용자 정의 예외를 발생시켜 오류를 처리할 수도 있습니다.

이 예제를 참고하여 인증 토큰 만료 예외 처리를 구현해보세요.