Подтвердить что ты не робот

Ошибка Google Map: InvalidKeyOrUnauthorizedURLMapError

Я разрабатываю в JavaScript/HTML/CSS приложение, которое использует Карты Google. Я получаю следующее диалоговое окно предупреждения:

"Эта страница не смогла отобразить элемент Google Maps. Предоставленный ключ API Google недействителен или этот сайт не имеет права использовать его. Код ошибки: InvalidKeyOrUnauthorizedURLMapError"

Приложение действительно отображает элемент карты; предупреждение не является проблемой, за исключением того, что оно не должно появляться вообще. Карта отображается правильно.

Я зашел в Консоль разработчика Google и в разделе "Учетные данные" "отредактировал разрешенные источники" для mydomain.com/*

Я также зашел в Консоль разработчика Google в разделе API и включил 11 API Карт Google.

4b9b3361

Ответ 1

После множества комбинаций ссылок, удаления и повторного создания учетных данных я понял, что я не включил "API JavaScript Карт Google". Какой позор.:)

Для тех, у кого возникли проблемы с работой google maps api, проверьте, включен ли API.

Ответ 2

После многого с этим вопросом я нашел 1 решение для меня. Это может помочь людям, которые ищут правильное и точное решение, но не комментарии, нисходящие и ссылки.
( Карта не отображалась в моем случае.)

Если предположим, ссылка на страницу, где вы загружаете карту, - это http://example.com/abc/def/ghi/kpn.php

тогда дадим same(exactly the same) при Edit allowed references

Если вы попытаетесь загрузить ту же страницу, используя:

www.example.com/abc/def/ghi/kpn.php

или

http://www.example.com/abc/def/ghi/kpn.php

тогда ваша страница будет загружена, но не ваша карта, и это предупреждение будет сгенерировано.

Заключение

Используйте тот же путь (адрес Url) в этих двух местах.

  • При загрузке страницы с картой.

  • В разделе Edit allowed references.

После этого я избавился от этого предупреждения.

Ответ 3

Сначала вам нужно перейти в https://console.developers.google.com/ и выбрать API.

В API Карт Google выберите API Карт Google Карт и убедитесь, что вы включили API для Google Maps JavaScript.

Во-вторых, вам нужно создать ключ API:

  • Перейдите в учетные данные
  • Создайте новый ключ и выберите "Ключ браузера"
  • Не нужно указывать рефереров

Итак, вы должны увидеть Any referrer allowed после сохранения.

Ответ 4

После долгих проб и ошибок это сработало для меня (Эдуардо. Спасибо!)

URL-адрес, который должен быть авторизирован, является адресом заголовка Referrer для запросов, которые браузер отправляет в Google для загрузки API.

В разделе Browser Credentials > REFERERS

Добавьте эти

Ответ 5

geocodezip предоставил необходимую мне информацию. Я действительно дважды загружал библиотеку googlemaps: один раз в файл index.html и один раз в iFrame. Я изменил свой код, чтобы iFrame не загружал библиотеку googlemaps, а вместо этого использовал родителя. Спасибо geocodezip!

Ответ 6

Перейдите в меню API и найдите "API JavaScript Google Maps" после того, как вы его открыли, просто нажмите "Включить API"

Ответ 7

Мне удалось заставить это работать, удалив всех моих рефереров и разрешив все. По-видимому, в консоли разработчика есть ошибка, которая вызывает проблемы. Некоторые люди говорят, что они могут заставить рефереров работать, удалив все, а затем добавив все обратно, а не последовательно:

https://productforums.google.com/forum/#!topic/maps/mSVyDazRMQo

Предыдущие вещи, которые я пробовал:

  • Регенерирующий ключ
  • Установка всех карт apis для включения
  • Твердое кодирование абсолютных путей рефереров

Боковое примечание, когда я не включил свой api_key, все работало оштрафованным, хотя я уверен, что они в конечном итоге отключат вас, если вы не используете api_key.

Ответ 8

Что сработало для меня, так это использовать Firebug, чтобы найти точный URL-адрес, который сделал запрос в API Карт Google. Как указано в документации API Карт Google в устранении неполадок авторизации, часть "Как найти правильный URL":

URL-адрес, который должен быть авторизирован, является адресом в заголовке Referrer для запросов, которые браузер отправляет в Google для загрузки API.

В моем случае давайте предположим, что у меня есть сайт example.com. В консоли разработчика под ключом API Карт Google я добавил много комбинаций реферера, таких как example.com/*, *.example.com/*, example.com, но при этом сохранялся InvalidKeyOrUnauthorizedURLMapError.

Мое решение, как я уже упоминал, использовать Firebug: откройте example.com и посмотрите, что запрос реферера сделал для https://maps.googleapis.com/maps/api/js?..., и это было http://example.com, и все. Я добавил http://example.com/* к включенным URL-адресам в Консоли разработчиков под моим соответствующим ключом API, и теперь все работает нормально.

Важно знать, где искать Firebug: это вкладка Net. Просто нажмите на запрос maps.googleapis ... и найдите Referer

Ответ 9

Я заработал, обменяв ключи своими собственными специальными клавишами и немного прочитав эту веб-страницу несколько раз. Мой совет заключается в том, чтобы добавить или обменять ключи API Google на https://console.developers.google.com/apis/credentials, прежде чем приступать к очень сложным сценариям.

Вставьте свои собственные ключи API в первую строку javascript Google Карт:

Ответ 10

Если вы настроили всю конфигурацию, например, api key и т.д., и вы все еще получили ошибку, включите все обязательные API-интерфейсы, относящиеся к картам google.

Нравится: -

API для внедрения Google Maps
API геокодирования Google Maps
API геолокации Google Maps
API JavaScript для Google Карт