Na tej stronie opisujemy komunikaty o błędach, które interfejs API JavaScript Map Google może zwracać. Interfejs API JavaScript Map Google wysyła komunikaty o błędach i ostrzeżenia do konsoli JavaScript. Mogą też wystąpić pewne błędy, które skutkują wyświetleniem ciemnej mapy oznaczonej znakiem wodnym.
Błędy klucza interfejsu API i błędy związane z płatnościami
Rozwiązywanie problemów
W pewnych okolicznościach może się pojawić zaciemniona mapa lub „negatywne” zdjęcie Street View ze znakiem „tylko do celów programistycznych”. Takie zachowanie zwykle wskazuje na problemy z kluczem interfejsu API lub rozliczeniami. Aby można było korzystać z usług Google Maps Platform, na koncie muszą być włączone płatności, a wszystkie żądania muszą zawierać prawidłowy klucz interfejsu API. Informacje o tym, jak znaleźć komunikaty o błędach, znajdziesz w sekcji dotyczącej sprawdzania błędów w przeglądarce.
Ten proces pomoże Ci rozwiązać problem.
Kody błędów interfejsu API JavaScript Map dla programistów i właścicieli witryn
W tabelach poniżej znajdziesz możliwe kody błędów zwracane przez interfejs API JavaScript Map Google, wraz z opisem przyczyny i sposobem rozwiązania problemu. Informacje o tym, jak znaleźć te komunikaty, znajdziesz w sekcji dotyczącej sprawdzania błędów w przeglądarce.
Błędy wczytywania mapy
Jeśli podczas wczytywania interfejsu Maps JavaScript API wystąpi błąd, zapoznaj się z wyjaśnieniami dotyczącymi kodów błędów.
Kod błędu | przekaz, | Opis |
---|---|---|
NotLoadingAPIFromGoogleMapsError
|
Interfejs Maps JavaScript API należy pobrać bezpośrednio z serwerów Google. |
Element skryptu, który wczytuje Maps JavaScript API, nie jest prawidłowo umieszczony na stronie. Aby interfejs API działał prawidłowo, musi zostać wczytany bezpośrednio ze strony 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. |
Po przesłaniu kilku powiadomień e-mail Twoja aplikacja została zablokowana z powodu nieprzestrzegania Warunków korzystania z usługi Google Maps Platform. Aby odwołać się od decyzji dotyczącej zablokowania aplikacji i poprosić o sprawdzenie jej implementacji, wypełnij ten formularz. Otrzymasz e-maila z odpowiedzią w ciągu kilku dni roboczych. Jeśli masz licencję na abonament Google Maps Platform Premium, użyj swoich danych logowania abonamentu Google Maps Platform Premium, aby naprawić ten błąd. Zapoznaj się z przewodnikiem dotyczącym uwierzytelniania w abonamencie Premium. |
UnauthorizedURLForClientIdMapError
|
Ten adres URL nie jest uprawniony do użycia podanego identyfikatora klienta Map Google. |
Identyfikator klienta w abonamencie Premium lub interfejsach API Map Google działających w skrypcie jest nieprawidłowy lub wygasł albo bieżący adres wczytujący interfejs Maps JavaScript API nie został dodany do listy autoryzowanych adresów URL. |
Kody błędów interfejsu API JavaScript Map Google
Jeśli znajdziesz błąd w konsoli JavaScript JavaScriptu, w konsoli internetowej Firefoksa lub w innych równoważnych narzędziach w przeglądarce, w tabeli poniżej znajdziesz ich opisy.
Interfejs API JavaScript Map Google zwraca zarówno błędy, jak i ostrzeżenia. Błąd oznacza poważny problem podczas wczytywania interfejsu Maps JavaScript API. Strona nie może prawidłowo wczytać interfejsu API, więc nie będzie na niej działać. Ostrzeżenie to dodatkowa wiadomość dotycząca wczytywania interfejsu Maps JavaScript API. W ostrzeżeniu opisujemy możliwe przyczyny błędu lub podpowiadamy potencjalne problemy z kodem, które ładują interfejs API JavaScript Map. Jeśli będziesz otrzymywać tylko ostrzeżenia bez błędów, interfejs API będzie działać prawidłowo na tej stronie. Zalecamy jednak rozwiązanie wszystkich potencjalnych problemów.
Kod błędu programisty | Typ | Opis |
---|---|---|
ApiNotActivatedMapError
|
Błąd |
Interfejs Maps JavaScript API nie został aktywowany w projekcie API. Może być konieczne włączenie interfejsu Maps JavaScript API w sekcji Interfejsy API w Google Cloud Console. Aby aktywować Maps JavaScript API w projekcie, kliknij przycisk poniżej.
|
ApiTargetBlockedMapError
|
Błąd |
Ten klucz interfejsu API nie ma uprawnień do korzystania z tej usługi lub tego interfejsu API. Sprawdź ustawienia ograniczeń interfejsu API klucza interfejsu API w Google Cloud Console, aby mieć pewność, że wszystkie interfejsy API i usługi, których chcesz używać, są prawidłowo określone na liście włączonych interfejsów API. Zobacz Klucze interfejsu API w Cloud Console. Więcej informacji znajdziesz w artykule Sprawdzone metody zabezpieczania interfejsu API. |
DeletedApiProjectMapError
|
Błąd |
Twój projekt API mógł zostać usunięty z Cloud Console. Sprawdź projekt, dla którego został wygenerowany klucz interfejsu API dołączany do programu wczytującego interfejs JavaScript API. Możesz utworzyć nowy projekt interfejsu API i uzyskać nowy klucz w Cloud Console. Aby utworzyć nowy projekt i uzyskać 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 |
Nie włączono płatności w projekcie, który powoduje ten błąd. 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 się pojawić po utworzeniu nowego klucza interfejsu API, jeśli spróbujesz użyć tego klucza, zanim zostanie rozpoznany przez system. Zaczekaj kilka minut i spróbuj ponownie lub konieczne może być wygenerowanie nowego klucza interfejsu API w Cloud Console. Aby uzyskać klucz interfejsu API, kliknij przycisk poniżej.
|
InvalidClientIdMapError
|
Błąd |
Identyfikator klienta zawarty w elemencie skryptu wczytującym interfejs API jest nieprawidłowy lub wygasł. Sprawdź, czy poprawnie używasz identyfikatora klienta. Identyfikator klienta powinien zaczynać się od „gme-”. Jeśli ten błąd wyświetla się, mimo że poprawnie używasz identyfikatora klienta, być może stracił on ważność. Skontaktuj się z menedżerem konta Google.
Jeśli nie masz licencji Premium ani Map API do pracy, musisz użyć parametru Zapoznaj się z przewodnikiem dotyczącym uwierzytelniania w abonamencie Premium. |
InvalidKeyMapError
|
Błąd |
Nie znaleziono klucza interfejsu API zawartego w skrypcie, który wczytuje interfejs API. Sprawdź, czy używasz prawidłowego klucza interfejsu API. Nowy klucz interfejsu API możesz wygenerować w Cloud Console. 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 |
Element skryptu, który wczytuje interfejs API, nie ma wymaganego parametru uwierzytelniania. Jeśli korzystasz ze standardowego interfejsu API JavaScript Map, musisz użyć parametru Jeśli korzystasz z abonamentu Premium, musisz użyć parametru Jeśli NIE jesteś właścicielem witryny, nie musisz podejmować żadnych działań, aby rozwiązać problem. W miarę możliwości warto jednak powiadomić właściciela witryny. |
ProjectDeniedMapError
|
Błąd |
Twoja prośba nie została zrealizowana. Więcej informacji o błędzie możesz znaleźć w Cloud Console. Zobacz Cloud Console. |
RefererDeniedMapError
|
Błąd |
Po przesłaniu kilku powiadomień e-mail Twoja aplikacja została zablokowana z powodu nieprzestrzegania Warunków korzystania z usługi Google Maps Platform. Aby odwołać się od decyzji dotyczącej zablokowania aplikacji i poprosić o sprawdzenie jej implementacji, wypełnij ten formularz. Otrzymasz e-maila z odpowiedzią w ciągu kilku dni roboczych. |
RefererNotAllowedMapError
|
Błąd |
Bieżący adres URL wczytywania interfejsu Maps JavaScript API nie został dodany do listy dozwolonych witryn odsyłających. Sprawdź ustawienia strony odsyłającej klucza interfejsu API w Cloud Console. Zobacz interfejs Maps JavaScript API i artykuł o pobieraniu klucza interfejsu API. |
OverQuotaMapError
|
Błąd |
Liczba żądań przekroczyła limity wykorzystania interfejsu API JavaScript Map Google. Żądania aplikacji będą ponownie działać przy następnym zresetowaniu limitu dziennego. Jeśli NIE jesteś właścicielem witryny, nie musisz podejmować żadnych działań, aby naprawić ten błąd. W miarę możliwości warto jednak powiadomić właściciela witryny. Więcej informacji znajdziesz w przewodniku po limitach wykorzystania. Na tej stronie możesz też dowiedzieć się, 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 interfejsu API. Więcej informacji znajdziesz w artykule Pierwsze kroki w Google Maps Platform. |
ClientIdLooksLikeCryptoKey
|
Ostrzeżenie |
Możliwe, że w parametrze Zobacz przewodnik po identyfikatorach klientów dla klientów korzystających z abonamentu Premium i interfejsów API Map Google for Work. |
ClientIdLooksLikeKey
|
Ostrzeżenie |
Możliwe, że w parametrze Zapoznaj się z przewodnikiem dotyczącym uwierzytelniania w abonamencie Premium. |
InvalidChannel
|
Ostrzeżenie |
Możliwe, że podano nieprawidłowy parametr Zobacz Raportowanie | Abonament Google Maps Platform Premium. |
InvalidClientId
|
Ostrzeżenie |
Wygląda na to, że parametr Zapoznaj się z przewodnikiem dotyczącym uwierzytelniania w abonamencie Premium. |
InvalidKey
|
Ostrzeżenie |
Klucz interfejsu API zawarty w elemencie skryptu, który wczytuje ten interfejs, wygląda na nieprawidłowy. Sprawdź, czy używasz prawidłowego klucza interfejsu API. Nowy klucz interfejsu API możesz wygenerować w Cloud Console. Aby uzyskać klucz interfejsu API, kliknij przycisk poniżej.
|
InvalidVersion
|
Ostrzeżenie |
Możliwe, że w skrypcie skryptu podano nieprawidłowy numer wersji. Upewnij się, że używasz prawidłowego numeru wersji. Więcej informacji znajdziesz w artykule Obsługa wersji | Interfejs API Map Google w języku JavaScript. |
KeyLooksLikeClientId
|
Ostrzeżenie |
Jako parametr key możesz podać identyfikator klienta. Jeśli masz licencję Premium lub Maps API for Work, określ identyfikator klienta jako parametr client , a nie parametr key . Jeśli masz abonament Premium w Google Maps Platform, możesz użyć parametru client lub key . Jeśli nie masz żadnych licencji, zamiast parametru client
musisz użyć parametru key .
Zapoznaj się z przewodnikiem dotyczącym uwierzytelniania w abonamencie Premium. |
KeyLooksLikeCryptoKey
|
Ostrzeżenie |
Jako parametr Zapoznaj się z przewodnikiem Określanie identyfikatora klienta podczas wczytywania interfejsu API. |
KeyLooksLikeProjectNumber
|
Ostrzeżenie |
Możliwe, że jako parametr Dowiedz się, jak uzyskać klucz interfejsu API. |
NoApiKeys
|
Ostrzeżenie |
Element skryptu, który wczytuje ten interfejs, nie ma klucza interfejsu API. Pamiętaj, aby podać prawidłowy klucz interfejsu API jako parametr
Aby uzyskać klucz interfejsu API, kliknij przycisk poniżej.
Jeśli wczytujesz interfejs Maps JavaScript API z wycofanej ścieżki v2, wyświetli się ostrzeżenie |
RetiredVersion
|
Ostrzeżenie |
Możliwe, że w skrypcie skryptu masz już wycofaną wersję. Zaktualizuj aplikację tak, aby używać jednej z dostępnych wersji. Więcej informacji znajdziesz w artykule Obsługa wersji | Interfejs API Map Google w języku JavaScript. |
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. Ponów żądanie po krótkim czasie. Jeśli to nie rozwiąże problemu, zapoznaj się z przewodnikiem dla programistów, żeby sprawdzić, czy żądanie ma prawidłowy format. |
Sprawdzanie błędów w przeglądarce
Interfejs API JavaScript Map Google wysyła komunikaty o błędach do witryny window.console
. Z tej sekcji dowiesz się, jak sprawdzić dane wyjściowe window.console
w Google Chrome. Jeśli używasz innej przeglądarki, zapoznaj się z jej dokumentacją. Dla ułatwienia przedstawiamy listę narzędzi do sprawdzania danych wyjściowych window.console
w niektórych innych przeglądarkach.
- Web Console w przeglądarce Firefox.
- Zdalne debugowanie na Androidzie.
- Inspektor sieci Web na iOS.
W Chrome możesz użyć konsoli JavaScript, aby sprawdzić dane wyjściowe window.console
w podany niżej sposób.
- Aby otworzyć Narzędzia dla programistów, kliknij ikonę menu > Więcej narzędzi > Narzędzia dla programistów.
- Aby otworzyć konsolę JavaScript, naciśnij klawisz ESC. Klucz ESC służy do przełączania konsoli JavaScriptu. Jeśli zamkniesz konsolę, naciśnij ponownie klawisz ESC, aby ją otworzyć.
Jeśli podczas wczytywania interfejsu Maps JavaScript API wystąpiły błędy lub ostrzeżenia, wyświetlają się one w konsoli jako co najmniej 1 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]
W tabeli kodów błędów powyżej znajdziesz kod błędu. Szczegóły komunikatu o błędzie znajdziesz też w dokumencie interfejsu API, do którego link znajdziesz w wiadomości.
Uwaga: możesz automatycznie wykrywać błędy uwierzytelniania.
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ę systemu Windows, która działa w WebView, upewnij się, że używasz WebView2 na podstawie Edge. Wcześniejsze wersje komponentu WebView oparte na przeglądarce Internet Explorer nie są już obsługiwane.
Jeśli kod nadal nie działa
Aby pomóc Ci w uruchomieniu kodu, Brendan Kenny i Mano Marks wskazują na typowe błędy i podpowiadają, jak je poprawić.
- Sprawdź, czy nie ma literówek. Pamiętaj, że w języku JavaScript rozróżniana jest wielkość liter.
- Sprawdź podstawowe informacje – niektóre z najczęstszych problemów występują przy początkowym tworzeniu mapy. Na przykład:
- Sprawdź, czy w opcjach mapy zostały określone właściwości
zoom
icenter
. - Upewnij się, że został przez Ciebie zadeklarowany element div, w którym mapa będzie się wyświetlać na ekranie.
- Upewnij się, że element div na mapie ma wysokość. Elementy div są domyślnie tworzone na wysokości 0 i dlatego są niewidoczne.
- Sprawdź, czy w opcjach mapy zostały określone właściwości
- Aby zidentyfikować problemy, na przykład ten dostępne w Narzędziach deweloperskich w Chrome, skorzystaj z debugera JavaScript. Zacznij od wyszukania błędów w konsoli JavaScript.
- Opublikuj pytania na stronie Stack Overflow. Wskazówki dotyczące publikowania przydatnych pytań znajdziesz na stronie Pomoc.