Параметры для Google Maps через SSL - PullRequest
18 голосов
/ 06 августа 2008

Недавно мы обнаружили, что API Карт Google плохо работает с SSL. Справедливо, но какие есть варианты для преодоления этого, которые другие использовали эффективно?

Будет ли API Карт работать через SSL (HTTPS)?

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

Мы рассмотрели следующие варианты

  1. Разделение страницы таким образом, чтобы коллекция кредитных карт (требование SSL) не находилась на той же странице, что и карта Google.
  2. Переключение на другого провайдера карт, такого как Virtual Earth. Ходят слухи, что они поддерживают SSL.
  3. Игра трюков с ИФРАМИ. Звучит глупо.
  4. Проксирование звонков в Google. Звучит как много накладных расходов.

Есть ли другие варианты, или кто-нибудь знает, какие варианты мы рассмотрели?

Ответы [ 7 ]

14 голосов
/ 21 августа 2008

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

Кстати, Virtual Earth, безусловно, полностью поддерживает SSL. Чтобы включить его, вам просто нужно изменить ссылку на скрипт с http: // на https: // и добавить & s = 1 к URL, например,

<script src="http://dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6.1" type="text/javascript"></script>

становится

<script src="https://dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6.1&s=1" type="text/javascript"></script>
8 голосов
/ 17 марта 2011

Просто добавить к этому

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

Еще не пытались перенести мои карты SSL (в конечном итоге с помощью API Bing maps) обратно в Google, но вполне возможно, что они на картах.

5 голосов
/ 06 августа 2008

Это похоже на проблему требований бизнеса / юзабилити - есть ли у вас веские основания для размещения карты на странице кредитной карты? Если это так, возможно, стоит решить некоторые технические проблемы.

Вы можете попробовать использовать Mapstraction , чтобы вы могли переключиться на провайдера, который поддерживает SSL, и вернуться к Google, если они будут поддерживать его в будущем.

3 голосов
/ 30 сентября 2009

Если вы являетесь клиентом API Карт Google Premier , то поддерживается SSL. Мы используем это, и это работает хорошо.

До того, как Google сделал SSL доступным, мы проксировали весь трафик, и это работало приемлемо. При использовании этого подхода вы теряете преимущество CDN от Google, и ваш IP-адрес может быть заблокирован, поскольку создается впечатление, что вы генерируете много трафика.

3 голосов
/ 06 августа 2008

Я бы пошел с вашим первым решением. Это позволяет пользователю сосредоточиться на вводе данных своей кредитной карты.

Затем вы можете перенести их на другую веб-страницу, которая запрашивает или предоставляет им дополнительную информацию, касающуюся карты Google.

1 голос
/ 03 августа 2012

Если вы получаете предупреждение SECURITY на IE 9 при отображении карт Google, используйте

<script src="https://maps.google.com/maps?file=api&v=2&hl=en&tab=wl&z=6&sensor=true&key=<?php echo $key;?>
" type="text/javascript"></script>

вместо

<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&sensor=SET_TO_TRUE_OR_FALSE"
  type="text/javascript"></script>
0 голосов
/ 03 июня 2017

Я только что удалил протокол http, и он заработал!

Из этого:

<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>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...