문제 해결

오류

오류가 발생하면 표준 형식의 오류 응답 본문이 반환됩니다. HTTP 상태 코드가 오류 상태로 설정됩니다

응답에는 단일 error 객체가 있는 객체가 다음 항목이 포함된 객체를 포함합니다. 키:

  • code: 응답의 HTTP 상태와 동일합니다.
  • message: 오류에 관한 간단한 설명입니다.
  • status: 오류의 특성을 나타내는 상태 코드입니다.

예를 들어 잘못된 placeId 매개변수를 전송하면 다음이 반환됩니다. 오류:

{
  "error": {
    "code": 400,
    "message": "\"placeId\" value is malformed: \"aChIJqaknMTeuEmsRUYCD5Wd9ARM\"",
    "status": "INVALID_ARGUMENT"
  }
}

가능한 오류는 다음과 같습니다.

코드 상태 메시지 문제 해결
400 INVALID_ARGUMENT 제공한 키가 잘못되었습니다. API 키가 잘못되었거나 요청에 포함되어 있지 않습니다. 전체 키를 포함했는지, 이 키에 대해 API를 사용 설정했습니다.
400 INVALID_ARGUMENT "\'경로\' 매개변수에 잘못된 값(☃)이 포함되어 있습니다. 요청에 잘못된 인수가 포함되어 있습니다. 이 문제의 가능한 원인은 이 오류는 다음과 같습니다.
  • path 매개변수에 문제가 있습니다.
    1개 이상, 100개 미만이어야 합니다. 포인트 각 점은 쉼표로 구분된 숫자 쌍이어야 합니다. 48.409114,-123.369158). 포인트는 다음과 같아야 합니다. 파이프 기호 '|'로 구분합니다.
  • 요청에 잘못된 placeId이(가) 포함되어 있습니다.
  • 요청에 placeIdpath입니다. 다음 매개변수 중 하나만 지정할 수 있습니다. 실행할 수 있습니다

placeId이 전달되는 경우에는 이 오류가 반환되지 않습니다. 도로가 아닌 다른 장소를 표시할 수 있습니다.

403 PERMISSION_DENIED 등록되지 않은 요청이 차단되었습니다. Google Developers를 사용하여 가입하세요. 콘솔을 클릭합니다. 다음 중 하나 이상의 이유로 인해 요청이 거부되었습니다.
  • API 키가 누락되었거나 잘못되었습니다.
  • 계정에서 결제가 사용 설정되지 않았습니다.
  • 자체 부과 사용량 한도를 초과했습니다.
  • 제공된 결제 수단이 더 이상 유효하지 않습니다 (예: 신용카드의 유효기간이 만료됨).

Google Maps Platform 제품을 사용하려면 결제를 사용 설정해야 합니다. 모든 요청에 유효한 API 키가 포함되어야 합니다. 이 문제를 해결하려면 다음 단계를 따르세요.

404 NOT_FOUND 이 서비스에는 HTTPS가 필요합니다. 다음 주소로 요청을 전송하고 있는지 https://roads.googleapis.com/, 제외 http://roads.googleapis.com/입니다.
429 RESOURCE_EXHAUSTED 프로젝트 요청 한도에 도달하여 요청이 제한되었습니다. 다음에서 구성한 요청 한도를 초과했습니다. Google Cloud Platform 콘솔 이 한도는 일반적으로 사용자별 100초당 요청 수, 100초당 요청 수, 이 제한은 단일 또는 소수의 사용자가 일일 할당량을 소진하지 않도록 하면서 동시에 적절한 액세스할 수 있습니다 API 사용량 상한 설정을 참고하세요. 이 한도를 구성합니다.

지수 백오프

요청이 실패하면 재시도 요청을 지수로 백오프입니다. 예를 들어 요청이 한 번 실패하면 1초 후에 다시 시도합니다. 다시 실패하면 2초 후에 재시도하고 그 다음 4초 후에 재시도하는 식입니다. 이 잘못된 요청이나 대규모 오류로 인해 Google의 많은 클라이언트가 요청을 매우 빠르게 재시도하려고 하기 때문입니다.

문제 해결 FAQ

구현 문제

차량 위치를 어떤 빈도로 샘플링해야 하나요?
고품질의 스냅투로드 결과를 얻기 위해 1~10초마다 하는 것이 좋습니다.
쿼리당 전송할 수 있는 포인트 수에 제한이 있나요?
예. 하나의 쿼리에는 최대 100개의 포인트를 포함할 수 있습니다.
맞춰진 위도/경도를 저장하는 데 어느 정도의 정밀도를 사용해야 하나요? 쌍?
스냅된 경로가 모든 확대/축소 수준에서 도로를 따르도록 하기 위해 스냅된 위도/경도 쌍을 소수점 이하 자릿수까지 표시해 줍니다.
인코딩된 폴리라인을 사용하여 맞춰진 경로를 표시할 수 있나요?
인코딩된 다중선은 소수점 이하 5자리의 정밀도로만 지정됩니다. 그러면 약 2미터의 오류가 발생합니다. 따라서 인코딩된 폴리라인은 높은 확대/축소에서 스냅된 경로가 도로를 따라가도록 하려는 경우에는 적합하지 않습니다. 있습니다.

일반적인 문제

일부 지점이 맞춰지지 않거나 맞춰진 경로에 간격이 있습니다. 어떻게 이 내용을 수정했나요?
  • 정해진 간격으로 포인트를 샘플링하는 경우 더 짧은 간격 (1~10초마다)으로 샘플링됩니다. 더 긴 간격을 사용하는 경우 예를 들어 60초 동안 도로에 스냅하기 알고리즘은 충분한 정확도로 운행된 도로를 파악할 수 있습니다.
  • 지점을 만들기 위해 지도를 수동으로 클릭하는 경우, 스냅 알고리즘이 생성하는 점의 수가 적거나 희소 점으로 경로를 만듭니다. 잘 처리되지 않습니다. 맞추기 알고리즘은 서로 가까이 있습니다. 다음에 맞추기: 도로 데모 또는 Roads 사용 검사기를 사용하여 경로를 테스트합니다.
시작할 때 맞춰진 경로가 들쭉날쭉하거나 도로에서 약간 벗어난 이유는 무엇인가요? 확대하시겠습니까?
  • 맞춰진 위도/경도 쌍의 정밀도를 자르고 있나요? 어떻게 해야 할까요? 스냅된 위도/경도 쌍을 소수점 이하 7자리 미만의 정밀도는 지도에 맞춰진 경로가 표시됩니다.
  • 인코딩된 폴리라인을 사용 중인가요? 인코딩된 폴리라인이 잘림 위도/경도 쌍을 소수점 이하 5자리까지 표시하는데, 이로 인해 수 미터에 위치하므로 선이 고르게 고르거나 중심에서 약간 벗어날 수 있습니다. 도로를 표시합니다.

위의 경우에 해당하지 않는 경우 지도 타일이 업데이트되었을 수 있습니다. 이로 인해 도로에 사용된 도로 색인과 동기화되지 않는 일이 일어났습니다. 맞추기 쿼리 중 일부만 영향을 받는 경우 할 수 있습니다. Google 지도는 정기적으로 업데이트되기 때문에 가끔 발생할 수 있지만 또한 지도에서 오래된 경로를 정기적으로 볼 경우 자주 발생합니다. 몇 주 전에 맞춰진 경로를 예로 들 수 있습니다. 시각화를 최적화하려면 지도에 표시하기 직전에 이전 경로를 다시 스냅해야 합니다. 지도 타일과 지도에 사용된 도로 인덱스 사이의 불일치를 맞추기

도로 X의 속도 제한이 잘못 표시되는 이유는 무엇인가요?
속도 제한은 정확도와 적용 범위가 다양한 여러 소스에서 비롯됩니다. 특정 도로 유형에 대한 속도 제한 등의 패턴을 찾은 경우 문제가 계속 발생하는 경우 다음 단계를 따르세요. 다음 링크를 통해 알려주세요.
  1. 데스크톱 컴퓨터에서 Google 지도를 열거나 Google 지도 앱을 여세요. Android
  2. 왼쪽 사이드 메뉴를 엽니다.
  3. 의견 보내기를 선택합니다. 참고: 로그인하라는 메시지가 표시될 수 있습니다.
  4. 지도 수정을 선택합니다.
  5. 수정할 도로 구간을 선택합니다.
  6. 다음을 선택합니다.
  7. '기타' 필드에서 해당 도로의 속도 제한이 잘못되었음을 나타냅니다.
  8. 제출을 선택합니다.
여기에서 다른 문제를 신고할 수도 있습니다 (예: 도로에 이름이 잘못되었거나, 잘못 그려졌거나, 폐쇄되었거나, 비공개임)
스냅된 경로가 도로를 따라가는 대신 모서리를 자르는 이유는 무엇인가요?
이 문제를 해결하려면 다음을 확인하세요.
  • interpolate 매개변수가 true로 설정되어 있는지 확인합니다.
  • 원본 데이터 포인트가 충분한 간격으로 샘플링되었는지 확인 (1~10초마다)
한 지점에 대해 스냅된 경로에서 많은 도로 구간이 반환되는 이유는 무엇인가요? 제한 없는 도로가 있나요?
interpolate 매개변수가 true로 설정된 경우 도로에 맞추기 쿼리는 모서리 주위의 도로를 따라가는 폴리라인을 반환합니다. 커브, 로터리입니다. 도로가 곡선인 경우 여러 개의 도로 구간이 속도 제한이 변경되지 않아도 반환을 해야 다중선을 만들 수 있습니다. 도로의 형태를 밀접하게 따릅니다.