Na tej stronie opisujemy komunikaty o błędach, które może zwrócić interfejs Maps JavaScript API. Interfejs Maps JavaScript API zapisuje komunikaty o błędach i ostrzeżenia w konsoli JavaScript. Mogą również wystąpić pewne błędy, które skutkują wyświetlaniem ciemniejszej mapy zawierającej znaki wodne.
Klucz interfejsu API i błędy rozliczeniowe
Rozwiązywanie problemów
W pewnych okolicznościach przyciemniona mapa lub „negatywne” zdjęcie Street View może się wyświetlać ze znakiem wodnym z tekstem „tylko do celów programistycznych”. Takie zachowanie zwykle oznacza problemy z kluczem interfejsu API lub płatnościami. Aby korzystać z usług Google Maps Platform, musisz włączyć na koncie płatności, a wszystkie żądania muszą zawierać prawidłowy klucz interfejsu API. Informacje o znajdowaniu komunikatów o błędach znajdziesz w sekcji poświęconej sprawdzaniu błędów w przeglądarce.
Ta procedura pomoże Ci rozwiązać problem.
Kody błędów interfejsu Maps JavaScript API dla programistów i właścicieli witryn
W tabelach poniżej znajdziesz możliwe kody błędów zwracane przez interfejs Maps JavaScript API oraz ich przyczyny i sposoby rozwiązania problemu. Informacje o znajdowaniu komunikatów o błędach znajdziesz w sekcji poświęconej sprawdzaniu błędów w przeglądarce.
Błędy wczytywania mapy
Jeśli napotkasz błąd podczas wczytywania interfejsu Maps JavaScript API, zapoznaj się z tabelą poniżej, gdzie znajdziesz objaśnienia kodów błędów.
Kod błędu | przekaz, | Opis |
---|---|---|
NotLoadingAPIFromGoogleMapsError
|
Interfejs Maps JavaScript API musi zostać pobrany bezpośrednio z serwerów Google. |
Element skryptu, który wczytuje interfejs Maps JavaScript API, nie jest prawidłowo umieszczony na stronie. Aby interfejs API działał prawidłowo, musi zostać wczytany bezpośrednio z https://maps.googleapis.com. |
TOSViolationMapError
|
Wygląda na to, że ta witryna narusza Warunki korzystania z interfejsu API Map Google. Interfejs API Map Google został wyłączony dla tej witryny. |
Twoja aplikacja została zablokowana z powodu niezgodności z Warunkami korzystania z usługi Google Maps Platform po otrzymaniu kilku e-maili z powiadomieniem. Aby odwołać się od blokady i poprosić o sprawdzenie implementacji, wypełnij ten formularz. Odpowiedź otrzymasz e-mailem w ciągu kilku dni roboczych. Jeśli masz licencję na abonament Premium Google Maps Platform, użyj danych logowania w abonamencie Premium Google Maps Platform, aby rozwiązać ten problem. Zapoznaj się z przewodnikiem po uwierzytelnianiu w abonamencie Premium. |
UnauthorizedURLForClientIdMapError
|
Ten URL nie ma uprawnień do korzystania z podanego identyfikatora klienta Map Google. |
Identyfikator klienta abonamentu Premium lub interfejsu API Map Google podany przy wczytywaniu skryptu jest nieprawidłowy, wygasł lub obecny adres, który wczytuje interfejs Maps JavaScript API, nie został dodany do listy autoryzowanych adresów URL. Więcej informacji znajdziesz w artykule Rejestrowanie autoryzowanych adresów URL. |
Kody błędów interfejsu Maps JavaScript API
Jeśli w konsoli JavaScript Chrome, konsoli Firefox Web Console lub w innych odpowiednich narzędziach w przeglądarce pojawia się błąd, zapoznaj się z poniższą tabelą, gdzie znajdziesz wyjaśnienia dotyczące kodów błędów.
Interfejs Maps JavaScript API zwraca zarówno błędy, jak i ostrzeżenia. Błąd wskazuje poważny problem, który wystąpił podczas wczytywania interfejsu Maps JavaScript API. Strona nie może prawidłowo wczytać interfejsu API i nie będzie on działać na tej stronie. Ostrzeżenie to dodatkowa wiadomość dotycząca wczytywania interfejsu Maps JavaScript API. Ostrzeżenie zawiera opis możliwych przyczyn błędu lub sugeruje potencjalne problemy w kodzie, które ładują interfejs Maps JavaScript API. Jeśli będziesz otrzymywać tylko ostrzeżenia bez żadnych błędów, interfejs API będzie działać na tej stronie prawidłowo. Zalecamy jednak rozwiązanie tych potencjalnych problemów.
Kod błędu dewelopera | Typ | Opis |
---|---|---|
ApiNotActivatedMapError
|
Błąd |
Interfejs Maps JavaScript API nie został włączony w Twoim projekcie API. Może być konieczne włączenie Maps JavaScript API w sekcji Interfejsy API w konsoli Google Cloud. Aby aktywować interfejs Maps JavaScript API w swoim projekcie, kliknij przycisk poniżej.
|
ApiTargetBlockedMapError
|
Błąd |
Ten klucz interfejsu API nie ma uprawnień do korzystania z tej usługi lub interfejsu API. Sprawdź ustawienia ograniczeń interfejsów API klucza interfejsu API w konsoli Google Cloud, aby mieć pewność, że wszystkie interfejsy API i usługi, których potrzebujesz do korzystania, są prawidłowo określone na liście włączonych interfejsów API. Zobacz klucze interfejsu API w konsoli Cloud. Więcej informacji znajdziesz w artykule o sprawdzonych metodach zapewniania bezpieczeństwa interfejsów API. |
DeletedApiProjectMapError
|
Błąd |
Twój projekt API mógł zostać usunięty z Cloud Console. Sprawdź projekt, dla którego wygenerowano klucz interfejsu API uwzględniony w programie ładującym JavaScript API. Możesz utworzyć nowy projekt interfejsu API i uzyskać nowy klucz w konsoli Cloud. Aby utworzyć nowy projekt i uzyskać dla niego klucz interfejsu API, kliknij przycisk poniżej.
|
ClientBillingNotEnabledMapError
|
Błąd |
Nie masz włączonych płatności w projekcie. Musisz włączyć płatności w projekcie Google Cloud powiązanym z tym identyfikatorem klienta tutaj. |
BillingNotEnabledMapError
|
Błąd |
W projekcie nie włączono płatności, co jest przyczyną tego błędu. Płatności w projekcie Google Cloud musisz włączyć tutaj. |
ExpiredKeyMapError
|
Błąd |
Klucz interfejsu API zawarty w elemencie skryptu, który wczytuje interfejs API, wygasł lub nie został rozpoznany przez system. Ten błąd może wystąpić po utworzeniu nowego klucza interfejsu API, jeśli próbujesz użyć go, zanim zostanie on rozpoznany przez system. Zaczekaj kilka minut i spróbuj jeszcze raz. Może być też konieczne wygenerowanie nowego klucza interfejsu API w konsoli Cloud. Aby uzyskać klucz interfejsu API, kliknij przycisk poniżej.
|
InvalidClientIdMapError
|
Błąd |
Identyfikator klienta zawarty w elemencie skryptu, który wczytuje interfejs API, jest nieprawidłowy lub wygasł. Sprawdź, czy prawidłowo używasz identyfikatora klienta. Identyfikator klienta powinien zaczynać się od „gme-”. Jeśli widzisz ten błąd, nawet jeśli prawidłowo używasz identyfikatora klienta, może to oznaczać, że identyfikator klienta wygasł. Skontaktuj się ze swoim opiekunem klienta w Google.
Jeśli nie masz abonamentu Premium ani licencji na interfejsy API Map Google, musisz użyć z kluczem interfejsu API parametru Zapoznaj się z przewodnikiem po uwierzytelnianiu w abonamencie Premium. |
InvalidKeyMapError
|
Błąd |
Nie znaleziono klucza interfejsu API uwzględnionego w elemencie skryptu, który wczytuje interfejs API. Upewnij się, że używasz prawidłowego klucza interfejsu API. Nowy klucz interfejsu API możesz wygenerować w konsoli Cloud. Aby uzyskać klucz interfejsu API, kliknij przycisk poniżej.
|
MalformedCredentialsMapError
|
Błąd |
Twoja aplikacja używa nieobsługiwanego schematu URI. Sprawdź, czy aplikacja używa prawidłowego formatu identyfikatora URI, zgodnie z definicją w RFC 3986. |
MissingKeyMapError
|
Błąd |
W elemencie skryptu, który wczytuje interfejs API, brakuje wymaganego parametru uwierzytelniania. Jeśli korzystasz ze standardowego interfejsu Maps JavaScript API, musisz użyć parametru Jeśli korzystasz z abonamentu Premium, musisz używać parametru Jeśli NIE jesteś właścicielem witryny, nie możesz nic zrobić, aby naprawić ten błąd. Warto jednak powiadomić o tym właściciela witryny. |
ProjectDeniedMapError
|
Błąd |
Twoja prośba nie została zrealizowana. Więcej informacji o błędzie możesz znaleźć w konsoli Cloud. Zobacz Cloud Console. |
RefererDeniedMapError
|
Błąd |
Twoja aplikacja została zablokowana z powodu niezgodności z Warunkami korzystania z usługi Google Maps Platform po otrzymaniu kilku e-maili z powiadomieniem. Aby odwołać się od blokady i poprosić o sprawdzenie implementacji, wypełnij ten formularz. Odpowiedź otrzymasz e-mailem w ciągu kilku dni roboczych. |
RefererNotAllowedMapError
|
Błąd |
Obecny adres URL wczytujący interfejs Maps JavaScript API nie został dodany do listy dozwolonych stron odsyłających. Sprawdź ustawienia strony odsyłającej klucza interfejsu API w konsoli Cloud. Zobacz opis interfejsu Maps JavaScript API i dowiedz się, jak uzyskać klucz interfejsu API. |
OverQuotaMapError
|
Błąd |
Liczba żądań przekroczyła limity wykorzystania interfejsu Maps JavaScript API. Żądania Twojej aplikacji będą działać ponownie po następnym zresetowaniu limitu dziennego. Jeśli NIE jesteś właścicielem witryny, nie możesz podjąć żadnych działań, aby naprawić ten błąd. Warto jednak powiadomić o tym właściciela witryny. Więcej informacji znajdziesz w przewodniku po limitach wykorzystania. Na tej stronie znajdziesz też informacje o tym, jak uzyskać wyższe limity wykorzystania. |
ApiProjectMapError
|
Błąd |
Nie udało się znaleźć podanego klucza interfejsu API lub projektu API, z którym jest on powiązany. Ten błąd może być tymczasowy. Jeśli ten komunikat o błędzie będzie się powtarzał, być może trzeba będzie uzyskać nowy klucz interfejsu API lub utworzyć nowy projekt API. Więcej informacji znajdziesz w artykule o pierwszych krokach z Google Maps Platform. |
ClientIdLooksLikeCryptoKey
|
Ostrzeżenie |
Być może w parametrze Zapoznaj się z przewodnikiem po identyfikatorach klientów dla klientów korzystających z abonamentu Premium i interfejsów API Map Google. |
ClientIdLooksLikeKey
|
Ostrzeżenie |
Być może w parametrze Zapoznaj się z przewodnikiem po uwierzytelnianiu w abonamencie Premium. |
InvalidChannel
|
Ostrzeżenie |
Być może podano nieprawidłowy parametr Zobacz Raportowanie | abonament Premium Google Maps Platform. |
InvalidClientId
|
Ostrzeżenie |
Wygląda na to, że parametr Zapoznaj się z przewodnikiem po uwierzytelnianiu w abonamencie Premium. |
InvalidKey
|
Ostrzeżenie |
Klucz interfejsu API zawarty w elemencie skryptu, który wczytuje interfejs API, wygląda na nieprawidłowy. Upewnij się, że używasz prawidłowego klucza interfejsu API. Nowy klucz interfejsu API możesz wygenerować w konsoli Cloud. Aby uzyskać klucz interfejsu API, kliknij przycisk poniżej.
|
InvalidVersion
|
Ostrzeżenie |
Możliwe, że element skryptu zawiera nieprawidłowy numer wersji. Upewnij się, że używasz prawidłowego numeru wersji. Więcej informacji znajdziesz na stronie Obsługa wersji | Google Maps JavaScript API. |
KeyLooksLikeClientId
|
Ostrzeżenie |
Być może jako parametr key podano identyfikator klienta. Jeśli masz abonament Premium lub licencję na interfejsy API Map Google, podaj swój identyfikator klienta jako parametr client zamiast key . Jeśli masz abonament Premium Google Maps Platform, możesz używać parametru client lub key . Jeśli nie masz żadnych licencji, zamiast parametru client
musisz użyć parametru key .
Zapoznaj się z przewodnikiem po uwierzytelnianiu w abonamencie Premium. |
KeyLooksLikeCryptoKey
|
Ostrzeżenie |
Być może jako parametr Zapoznaj się z przewodnikiem dotyczącym określania identyfikatora klienta podczas wczytywania interfejsu API. |
KeyLooksLikeProjectNumber
|
Ostrzeżenie |
Być może w parametrze Dowiedz się, jak uzyskać klucz interfejsu API. |
NoApiKeys
|
Ostrzeżenie |
Element skryptu, który wczytuje interfejs API, nie ma klucza interfejsu API. Jako parametr
Aby uzyskać klucz interfejsu API, kliknij przycisk poniżej.
Jeśli wczytujesz Maps JavaScript API z wycofanej ścieżki w wersji 2, zobaczysz ostrzeżenie |
RetiredVersion
|
Ostrzeżenie |
Element skryptu może zawierać wycofaną wersję. Zaktualizuj aplikację, aby używała jednej z dostępnych wersji. Więcej informacji znajdziesz na stronie Obsługa wersji | Google Maps JavaScript API. |
SensorNotRequired
|
Ostrzeżenie |
Parametr |
SignatureNotRequired
|
Ostrzeżenie |
Parametr |
SignedInNotSupported
|
Ostrzeżenie |
Parametr |
UrlAuthenticationCommonError
|
Błąd |
Wystąpił błąd, który nie pasuje do innych kategorii na tej stronie. Może to być spowodowane tymczasowym problemem. Spróbuj jeszcze raz z krótkim opóźnieniem. Jeśli to nie rozwiąże problemu, zapoznaj się z przewodnikiem dla programistów, aby sprawdzić, czy żądanie ma prawidłowy format. |
Sprawdzanie błędów w przeglądarce
Interfejs Maps JavaScript API zapisuje komunikaty o błędach w interfejsie window.console
. W tej sekcji dowiesz się, jak sprawdzić dane wyjściowe window.console
w Google Chrome. Jeśli używasz innych przeglądarek, zapoznaj się z dokumentacją ich programistów. W celach informacyjnych znajdziesz listę narzędzi, które pozwolą Ci sprawdzić dane wyjściowe wartości window.console
w niektórych innych przeglądarkach.
- Konsola internetowa dla Firefoksa.
- Zdalne debugowanie w przypadku Androida.
- Inspektor sieci na iOS.
W Chrome możesz za pomocą konsoli JavaScript sprawdzić dane wyjściowe window.console
w ten sposób.
- Aby otworzyć Narzędzia dla deweloperów, kliknij ikonę menu > Więcej narzędzi > Narzędzia dla deweloperów.
- Aby otworzyć konsolę JavaScript, naciśnij klawisz ESC. Klawisz ESC przełączy konsolę JavaScript. Jeśli zamkniesz konsolę, naciśnij ponownie klawisz ESC.
Jeśli podczas wczytywania interfejsu Maps JavaScript API wystąpiły błędy lub ostrzeżenia, są one wyświetlane w konsoli jako co najmniej jeden wiersz. Komunikat o błędzie lub ostrzeżenie ma taki format:
Google Maps API error: [ERROR CODE] [Link to API document]
lub
Google Maps API warning: [ERROR CODE] [Link to API document]
Aby znaleźć kod błędu w komunikacie o błędzie, zajrzyj do tabeli z kodami błędów powyżej. Szczegółowe informacje o komunikacie o błędzie znajdziesz też w dokumencie API, do którego link znajdziesz w wiadomości.
Uwaga: możesz wykrywać błędy uwierzytelniania automatycznie.
Obsługa nieobsługiwanych przeglądarek
Upewnij się, że wersja przeglądarki, której używasz, jest obecnie obsługiwana przez interfejs Maps JavaScript API.
Jeśli tworzysz natywną aplikację dla systemu Windows, która uruchamia się w WebView, upewnij się, że używasz WebView2 w oparciu o Edge. Poprzednie wersje komponentu WebView opartego na Internet Explorerze nie są już obsługiwane.
Jeśli kod nadal nie działa
Aby pomóc Ci w utworzeniu kodu w Mapach, Brendan Kenny i Mano Marks pokazują w tym filmie kilka typowych błędów i sposoby ich naprawy.
- Sprawdź, czy nie ma literówek. Pamiętaj, że w języku JavaScript rozróżniana jest wielkość liter.
- Sprawdź podstawy – niektóre z najczęstszych problemów występują przy początkowym tworzeniu mapy. Na przykład:
- Potwierdź, że w opcjach mapy zostały określone właściwości
zoom
icenter
. - Pamiętaj, aby zadeklarować element div, w którym mapa wyświetli się na ekranie.
- Sprawdź, czy element div mapy ma wysokość. Domyślnie elementy div mają wysokość 0 i dlatego są niewidoczne.
- Potwierdź, że w opcjach mapy zostały określone właściwości
- Użyj debugera JavaScriptu, aby zidentyfikować problemy (takie jak ten dostępny w Narzędziach deweloperskich w Chrome). Zacznij od wyszukania błędów w konsoli JavaScript.
- Opublikuj pytania w Stack Overflow. Wytyczne na temat publikowania ciekawych pytań znajdziesz na stronie Pomoc.