我们最近发现Google Maps API与SSL无法很好地协作。 很公平,但有哪些选择可以克服其他人有效使用过的?

Maps API是否可以通过SSL(HTTPS)工作?

目前,Maps API无法通过安全(SSL)连接提供。 如果您在安全站点上运行Maps API,则浏览器可能会警告用户屏幕上的非安全对象。

我们考虑了以下选项

  1. 拆分页面以便信用卡收集(SSL要求)与Google Map不在同一页面上。
  2. 切换到另一个地图提供程序,例如Virtual Earth。 有传言称他们支持SSL。
  3. 用IFRAME玩弄技巧。 听起来很糟糕。
  4. 将电话转到Google。 听起来像很多开销。

还有其他选择,或者是否有人对我们考虑的选项有所了解?

===============>>#1 票数:14 已采纳

我同意前两个答案,在这种情况下,从可用性的角度来看,将两个功能分成不同的屏幕可能会更好。 您真的希望您的用户专注于输入完整和准确的信用卡信息,并且在同一屏幕上显示地图可能会分散注意力。

尽管如此,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>

===============>>#2 票数:8

只是为了补充这一点

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

还没有尝试将我的SSL地图(最终使用Bing地图api)迁移回谷歌,但可能会出现在卡片上。

===============>>#3 票数:5

这似乎是商业要求/可用性问题 - 您是否有充分的理由将地图放在信用卡页面上? 如果是这样,也许值得解决一些技术问题。

您可以尝试使用Mapstraction ,这样您就可以切换到支持SSL的提供程序,并在将来支持它时切换回Google。

===============>>#4 票数:3

如果您是Google Maps API Premier客户,则支持SSL。 我们使用它,效果很好。

在谷歌提供SSL之前,我们代理了所有流量,这是可以接受的。 当您使用此方法时,您将失去Google的CDN的优势,并且您可能会禁用您的IP,因为它会显示您正在产生大量流量。

===============>>#5 票数:3

我会选择你的第一个解决方案。 这允许用户专注于输入他们的信用卡详细信息。

然后,您可以将它们转移到另一个网页,该网页会询问或提供有关Google地图的更多信息。

===============>>#6 票数:1

如果您在显示Google地图时在IE 9上获得安全警告,请使用

<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>

===============>>#7 票数:0

我刚刚删除了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>

  ask by Brad Tutterow translate from so

未解决问题?本站智能推荐: