구글 지도 Routes API 오류 처리: Handle Request Errors

Google 지도 Routes API를 사용할 때 요청이 잘못되면, API는 명확한 JSON 오류 메시지를 통해 문제 원인을 알려줍니다. 적절한 오류 처리를 구현하면 사용자에게 유용한 피드백을 제공하고 애플리케이션의 안정성을 높일 수 있습니다. 

 

1. 오류 응답 개요

Routes API는 요청 오류가 발생할 경우 응답 본문에 error 객체를 포함시켜 반환합니다. 이 객체에는 code, message, status 필드가 있어, 오류 상황을 세부적으로 확인할 수 있습니다.

2. 403 PERMISSION_DENIED: API 키 누락

API 키를 헤더 또는 쿼리 파라미터에 포함하지 않은 경우, 다음과 같은 오류가 반환됩니다.

{
  "error": {
    "code": 403,
    "message": "The request is missing a valid API key.",
    "status": "PERMISSION_DENIED"
  }
}

3. 400 INVALID_ARGUMENT: 필수 파라미터 누락

요청 본문에 origin 또는 destination 같은 필수 위치 정보가 누락된 경우, 다음과 같은 오류가 반환됩니다. 

{
  "error": {
    "code": 400,
    "message": "Origin and destination must be set.",
    "status": "INVALID_ARGUMENT"
  }
}

4. 추가 오류 정보 확인

그 외 다양한 오류 코드와 처리 방법은 Google Cloud API Design Guide의 Errors 문서를 참고하세요. 

5. 오류 처리 팁

  • 사전 검증: 요청을 보내기 전 필수 필드(origin, destination, travelMode 등)가 모두 설정되었는지 확인하세요.
  • 재시도 로직: 일시적인 네트워크 오류나 5xx 서버 오류에 대비해 재시도 메커니즘을 구현하세요.
  • 사용자 안내: 오류 코드에 따라 “유효한 API 키를 설정해주세요” 또는 “출발지/도착지를 확인해주세요” 등의 명확한 메시지를 제공하세요.
  • 모니터링: 실제 서비스에서 발생하는 오류 로그를 수집해 빈번한 오류 유형을 분석하고 개선하세요.

Routes API의 오류 응답 구조를 이해하고 적절히 처리하면, 사용자 경험을 개선하고 시스템 안정성을 높일 수 있습니다.