我们最近发现Google Maps API与SSL无法很好地配合。很公平,但有哪些选择可以克服其他人有效使用过的?
Will the Maps API work over SSL (HTTPS)?
此时,Maps API不是 通过安全(SSL)提供 连接。如果你正在运行 浏览器在安全站点上的Maps API 可能会警告用户不安全 屏幕上的物体。
我们考虑了以下选项
是否有其他选择,或者是否有人对我们考虑过的选项有所了解?
答案 0 :(得分: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>
答案 1 :(得分:8)
只是添加到此
http://googlegeodevelopers.blogspot.com/2011/03/maps-apis-over-ssl-now-available-to-all.html
尚未尝试将我的SSL地图(最终使用Bing地图api)迁移回Google,但可能会出现在卡上。
答案 2 :(得分:5)
这似乎是商务要求/可用性问题 - 您是否有充分的理由将地图放在信用卡页面上?如果是这样,也许值得解决一些技术问题。
您可以尝试使用Mapstraction,这样您就可以切换到支持SSL的提供商,并在将来支持它时切换回Google。
答案 3 :(得分:3)
我会选择你的第一个解决方案。这允许用户专注于输入他们的信用卡详细信息。
然后,您可以将它们转移到另一个网页,该网页会询问或提供有关Google地图的更多信息。
答案 4 :(得分:3)
如果您是Google Maps API Premier客户,则支持SSL。我们使用它,效果很好。
在谷歌提供SSL之前,我们代理了所有流量,这是可以接受的。当您使用此方法时,您将失去Google的CDN的优势,并且您可能会禁用您的IP,因为它会显示您正在产生大量流量。
答案 5 :(得分: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>
答案 6 :(得分: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>