Вопрос по google-maps-api-3 – После месяцев 100% стабильности, сегодня я получаю 403 Ошибка на Google Maps Services

3

Мне просто интересно, может кто-нибудь пролить свет на то, почему я вижу 403 Запрещенные ошибки для моих сервисов карт Google.

Я загружал API карты как таковой:

<script type="text/javascript" src="//maps.googleapis.com/maps/api/js?libraries=places&amp;sensor=false"></script>

А затем используйте библиотеки геокодирования и автозаполнения, чтобы превратить пользовательский поиск в координаты для отображения на карте в моих результатах поиска.

Это работало отлично (в течение нескольких месяцев) до вчерашнего дня, когда я начал видеть 403 ошибки при каждом обращении к службе автозаполнения.

Я уверен на 100%, что не достиг лимита в 25 000 запросов в день, и я не внес никаких изменений в код с моей стороны.

Я добавил ключ API для загрузки скрипта, и проблема исчезла, но я хочу быть уверенным, что это больше не повторится. Поиск на основе местоположения является основной функцией на нашем сайте, и в случае ее поломки мы теряем клиентов.

Кто-нибудь знает, почему это могло произойти?

И при каких обстоятельствах это может повториться?

@ JanisLankovskis - Спасибо, но он все еще использует&amp; и работает. Новый вызов просто://maps.googleapis.com/maps/api/js?libraries=places&amp;sensor=false&amp;key=APPLICATIONKEY dazbradbury
Здравствуй. Возможно&amp; Ты пытался заменить его на& ? Janis Lankovskis

Ваш Ответ

2   ответа
12

даже с набором ключей API - и я думаю, что проблема на самом деле заключается в кэшировании javascript карт Google.

Мой веб-сервер динамически решает, какой javascript объединить, минимизировать и кэшировать локально. Это делается с помощью RequestReduce.

Когда JavaScript на стороне клиента устареет через 3 дня в моем случае) - Google возвращает 403 несанкционированных.

Ключ API был просто красной сельдью. Я могу удалить ключ, и мой код все еще работает - пока карты js "свежие".

В моем случае исправление было добавитьmaps.googleapis.com на RequestReduce Черный список

javascriptUrlsToIgnore="maps.googleapis.com"

Для других просто не кэшируйте javascript maps.googleapis.com больше, чем на несколько часов.

Не могу поверить, что это была проблема. Очистил кеш и все снова работает. Спасибо, что вернулись и опубликовали это. Thomas McCabe
О каком ключе API ты говоришь? Sean Mickey
Один приобрел у Code.google.com / APIs / консоль. Который находится в вызове API Google Maps://maps.googleapis.com/maps/api/js?key=APP‌​LICATIONKEY dazbradbury
Это была моя проблема. Кэширование приложений HTML5 делает это довольно простым. Они действительно должны предоставить больше информации в своем ответе, чтобы дать вам подсказку о том, что является реальной проблемой. Allan Nienhuis
Аналогичная проблема при использовании cloudflare и включении производительности (rocketscripts) и агрессивного кэширования. ajzeffer
3

.9 @ Изменен и версия по умолчанию увеличилась с 3,6 до 3,7. Я заметил, что вы не указываете версию в URL-адресе, который вы используете для загрузки библиотеки JavaScript API Карт Google, поэтому вы получаете версию по умолчанию, 3.7. Важной особенностью версии 3.7 является то, что теперь требуется использование ключей для некоторых библиотек. Информация о том, какую версию вы должны использовать, доступна в Versioning раздел Руководства разработчика.

Несколько других сталкивались с подобными проблемами, но если вы работаете нормально после добавления ключа, у вас все должно быть хорошо. Если вы хотите получать уведомления об изменениях API Карт Google в будущем, вы можете зарегистрироваться для уведомлений.

Спасибо за ответ, и я полагаю, что недавно вы имели в виду вчерашний день! Я зарегистрировался для получения уведомлений, поэтому, надеюсь, в будущем смогу быть более активным ... dazbradbury

Похожие вопросы