2009-07-29 2 views
17

Мы используем Карты Google свыше https с помощью ключа API бесплатных карт. The Google Maps API FAQ says:Google maps over https

API Google Карт JavaScript и Google API статических карт может быть доступ через защищенное соединение (HTTPS) с помощью Google Maps API Premier клиентов. Если API Google Maps используются с бесплатным ключом API Карт на защищенном сайте, браузер может предупредить пользователя об незащищенных объектах на экране.

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

Кто-нибудь знает, блокирует ли Google использование API карт через https с помощью бесплатных ключей API карт?

+3

Я думаю, что это означает, что вы можете получить доступ только карты Google, как HTTP, но если вы используете какой-либо HTTP на странице, которая является HTTPS вы» Вы получите предупреждение.Если вы попытаетесь получить доступ к картам как HTTPS, вы ничего не получите. Вот как я читаю часто задаваемые вопросы, которые вы цитировали. –

+0

Я думаю, что ваше понимание верное. Вы видите, есть ли ошибки? Вы можете использовать Firebug для проверки. –

ответ

6

С быстрым взглядом на сайт главной страницы Google Maps кажется, что они, вероятно, блокируют его. Одна из перечисленных функций является «способность обеспечить безопасные карты через HTTPS»

http://code.google.com/apis/maps/documentation/premier/

Хорошо, вот некоторые более конкретные сведения:

http://code.google.com/apis/maps/faq.html#ssl

Похоже, вы, вероятно, получить пустую карту, потому что вы пытаетесь получить доступ с помощью https, который доступен только членам премьеры

0

нет, Google позволит вам отображать карту, даже если вы используете бесплатный Google A Вход PI через https.

Это определенно дает вам всплывающее окно с просьбой дать да/нет, но ваша карта будет отображаться точно.

0

Возможно, вы столкнетесь с проблемой, используя OpenStreetMap. Это не очень простое решение, потому что основной сервер плитки OpenStreetMap не поддерживает соединения HTTPS, но есть разные вещи, которые вам разрешено делать с OpenStreetMap, которые google никогда не разрешит.

Некоторые более обсуждение этого на форуме OpenStreetMap: http://forum.openstreetmap.org/viewtopic.php?id=5546

21

По состоянию на 15 марта 2011 года, кто-то может использовать API в https://maps-api-ssl.google.com/

http://googlegeodevelopers.blogspot.com/2011/03/maps-apis-over-ssl-now-available-to-all.html

+0

Это фантастические новости! – dmnc

+0

Удивительный, спасибо. – SimplGy

+1

Этот синтаксис устарел сейчас. https://developers.google.com/maps/articles/geocodingupgrade. При переходе с v2 разработчики могут использовать устаревшее имя хоста - либо 'maps.google.com', либо' maps-api-ssl.google.com', если используете SSL , Вы должны перейти на новое имя хоста: 'maps.googleapis.com'. Это имя хоста может использоваться как по HTTPS, так и по HTTP. – Danger14

2

Вы, вероятно, следует использовать относительный URL протокола ,

<script type="text/javascript" src="//maps.google.com/maps/api/js?sensor=false"></script> 
1

После установки сертификата SSL мне просто нужно было сделать простые изменения, чтобы все работало.

Отсюда:

<script src="http://maps.google.com/maps/api/js?sensor=true" type="text/javascript"></script> 

Для этого:

<script src="//maps.google.com/maps/api/js?sensor=true" type="text/javascript"></script> 
+0

это работало идеально для меня. Спасибо!!! – Carlitos