2015-06-04 1 views
0

Я пытаюсь работать с статическими картами google, но я все время получаю 403 ошибки и имел много путаницы, пытаясь понять это. Если я щелкнул правой кнопкой мыши на сломанном изображении и выбрал «открыть в новой вкладке», тогда он будет загружаться в порядке, и после этого он также будет загружаться на фактической странице, где я его внедряю. Я не уверен, почему он работает таким образом.Как использовать ключ API с Google Static Maps?

Я читал, что 403 означает, что он достиг определенного предела квоты, хотя это довольно низкий трафик сервера. Я попытался настроить ключ API, но я довольно смущен тем, как он должен работать. Google documentation for static maps говорит, что вам нужно создать «Ключ сервера», но также и тот, что этот ключ должен быть закрыт на сервере и не встроен на страницу. Как использовать ключ сервера, не помещая его в источник тега изображения?

Я прочитал в другом месте в stackoverflow, что вместо этого я должен использовать «Браузерный ключ». Кажется, что все работает нормально, но есть много доменов, которые я намереваюсь использовать, и я не могу поместить их в разрешенные источники. Должен ли я позволить этому разрешить любому рефереру?

Я использую API V2, с URLs как это: http://maps.googleapis.com/maps/api/staticmap?center= {someaddress} & размера = 250x250 & зума = 14 & ключа = {} MyKey

+0

Google с тех пор исправил свою документацию, заявив, что вам нужен ключ браузера, а не ключ сервера. – Gannet

ответ

0

В итоге мне удалось выяснить причину ошибки. Я включил пользовательский маркер карты в URL-адрес, и оказалось, что сервер может немного замедлить показ изображения маркера в google. У Google, похоже, очень низкий тайм-аут в ожидании маркера карты, поэтому он откажется от ожидания и вернет ошибку. Я удалил пользовательский маркер, и теперь он отлично работает, без необходимости использовать ключ API.

+0

Пожалуйста, отметьте этот ответ как принятый для вопроса. Благодаря! – Brett

0

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

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

Второй вариант - использовать отдельный ключ API браузера для каждого домена. Затем вы можете установить разрешенные источники для каждого домена.

+0

Спасибо за помощь, к сожалению, в моем случае создание отдельного ключа для каждого домена также не является жизнеспособным вариантом. – Gannet