Obsługa błędów

Deweloperzy z Europejskiego Obszaru Gospodarczego (EOG)

Po wysłaniu prośby możesz otrzymać odpowiedź zawierającą szczegóły błędu.

Kafelki 2D i zdjęcia Street View

Poniżej znajdziesz listę błędów, które możesz napotkać podczas korzystania z płytki 2D i zdjęć Street View.

Lista błędów

Poniżej znajdziesz listę błędów, które mogą wystąpić podczas korzystania z Map Tiles API.

required
W Twoim żądaniu brakuje parametru adresu URL. Zwróć uwagę, że komunikat o błędzie wskazuje, którego parametru brakuje.
notFound, invalid

Wartości x, y lub z są spoza zakresu.

  • W przypadku zwykłych kafelków mapy maksymalny poziom powiększenia zależy od konkretnego kafelka i od opcji mapy, o które prosisz.

  • W przypadku zwykłych kafelków mapy współrzędna x musi mieścić się w zakresie [0, (2^zoom)-1].

  • W przypadku zwykłych kafelków mapy współrzędna y musi mieścić się w zakresie [0, (2^(zoom-1))-1].

  • W przypadku kafelków Street View poziom powiększenia musi mieścić się w zakresie od 0 do 5 (włącznie).

  • W przypadku fragmentów Street View zakresy współrzędnych x i y są takie same jak w przypadku zwykłych fragmentów mapy aż do poziomu powiększenia 5. W tym momencie maksymalne wartości to imageHeight lub imagewidth podzielone przez tileHeight lub tileWidth.

forbidden:

Możliwe przyczyny:

  • W żądaniu brakuje prawidłowego klucza interfejsu API.

  • Wiadomość: Your request cannot be served. Please ensure the parameters and request type are valid for your account and region.

    Kafelki satelitarne 2D nie są dostępne w projektach połączonych z kontem rozliczeniowym z adresem w Europejskim Obszarze Gospodarczym (EOG). Więcej informacji znajdziesz w artykule Zmiany w interfejsie Map Tiles API dla klientów z Europejskiego Obszaru Gospodarczego.

expired
Twój token session wygasł. Token sesji jest ważny przez 2 tygodnie od momentu jego utworzenia. Pamiętaj, że może się to zmienić bez powiadomienia. Jeśli otrzymasz ten błąd, musisz uzyskać nowy token sesji zgodnie z opisem w sekcji Używanie tokenów sesji.
badRequest

Żądanie ma nieprawidłowy format. Oto częste powody:

  • Określono typ mapy terrain bez uwzględnienia warstwy roadmap.

  • W przypadku typu mapy innego niż mapa drogowa uwzględniono tablicę styles.

  • W żądaniu metadanych Street View przesłano wartość szerokości i długości geograficznej oraz identyfikator panoramy.

quotaExceeded, rateLimitExceeded

Aplikacja przekroczyła dozwolony limit lub dozwoloną liczbę zapytań na sekundę.

Przykładowy błąd

{
  "error": {
    "code": 403,
    "message": "The request is missing a valid API key.",
    "errors": [
      {
        "message": "The request is missing a valid API key.",
        "domain": "global",
        "reason": "forbidden"
      }
    ],
    "status": "PERMISSION_DENIED"
  }
}

Ponawianie żądań

Gdy żądania kończą się niepowodzeniem z kodami quotaExceededrateLimitExceeded, należy ponowić żądanie w taki sposób, aby uszkodzone żądania lub awarie na dużą skalę nie zalewały serwerów Google, ponieważ wielu klientów próbuje ponawiać żądania w szybkiej kolejności. Oznacza to, że podczas ponawiania żądań należy stosować odczekiwanie wykładnicze. Wycofywanie wykładnicze zmusza do rozłożenia żądań w czasie, aby serwer miał czas na odzyskanie sprawności.

Jeśli na przykład żądanie się nie powiedzie, spróbuj ponownie po sekundzie. Jeśli jednak ta próba również się nie powiedzie, ponów żądanie po 2 sekundach. Jeśli to żądanie również się nie powiedzie, spróbuj ponownie po 4 sekundach. W ten sposób skutecznie rozkładasz każde kolejne żądanie, po prostu podwajając czas między nimi.

Kafelki 3D

Błędy serwera Google mogą być dla Ciebie niewidoczne, ponieważ dostęp do fotorealistycznych kafelków uzyskujesz za pomocą renderera, który odpowiada za obsługę błędów serwera.

Błędy renderowania kafelków

Na przykład moduł renderujący CesiumJS zwykle nie zgłasza błędów serwera, co może powodować różne problemy, od awarii i pustych ekranów po brak wczytywania konkretnych kafelków.

Technika debugowania błędów serwera zależy od używanego renderera. W przypadku renderowania w przeglądarce, np. w CesiumJS, możesz sprawdzić ruch w sieci za pomocą narzędzi wbudowanych w większość przeglądarek. Możesz na przykład użyć Narzędzi deweloperskich w Chrome.

Typowe błędy

Poniżej znajdziesz szczegółowe informacje o najczęstszych błędach, które możesz napotkać.

400. Nieprawidłowy argument
Nieprawidłowe klucze interfejsu API, parametry zapytania, identyfikatory kafelka lub zestawu kafelków albo wygasły token sesji.
400. Nieprawidłowa wartość
Upewnij się, że parametr mapType, z którym wysłano createSessionToken żądanie, jest zgodny z parametrem mapType używanym w kolejnym punkcie końcowym kafelka. Na przykład tokena sesji a streetview nie można użyć do wysłania prośby o kafelek roadmap.

403. Odmowa dostępu

Możliwe przyczyny:

  • Brak klucza interfejsu API, brak połączenia SSL lub klucz interfejsu API nie został dodany do listy dozwolonych w przypadku kafelków 3D. Skontaktuj się z zespołem pomocy Google i podaj identyfikator projektu, aby dodać go do listy dozwolonych w przypadku funkcji 3D Tiles interfejsu Map Tiles API.

  • Wiadomość: Your request cannot be served. Please ensure the parameters and request type are valid for your account and region.

    Fotorealistyczne kafelki 3D nie są dostępne w projektach połączonych z kontem rozliczeniowym z adresem w Europejskim Obszarze Gospodarczym (EOG). Więcej informacji znajdziesz w artykule Zmiany w interfejsie Map Tiles API dla klientów z Europejskiego Obszaru Gospodarczego.

429: zbyt wiele żądań
Twój limit został wyczerpany. Aby zwiększyć limit, skontaktuj się z zespołem pomocy Google.