背景:我有一个嵌入式谷歌地图工作正常一段时间(约2年)。它最近停止工作(这几天,不能确切的时间)。我有一个正常工作的API密钥。
不工作我的意思是: API已加载。 地图已初始化,您甚至可以在其上绘制标记。 但是,没有加载背景(地图,瓷砖?的图片)。似乎甚至没有要求获得瓷砖。整个“地图区域”是空白的,你可以四处走动(我从控制台看到它试图在我“移动”时获得新的观点)。 并且没有记录错误。
我用我的API密钥尝试了他们的简单地图示例,这是有效的。 尝试与我们的网站服务器基本相同的代码,它停止工作。
在开发人员的信息中心中(您可以在其中看到使用API密钥发出的请求数)。我发现所有失败的都没有在这里注册。 所以我认为有一些身份验证?但我可以弄清楚为什么它在一个案例中工作而不是另一个案例。
由于它已经工作了2年,代码可能并不重要。但这里的测试页面代码以防万一,完全从他们的例子中复制出来:
<script>
var map;
function initMap() {
map = new google.maps.Map(document.getElementById('map'), {
center: {lat: -34.397, lng: 150.644},
zoom: 8
});
}
</script>
<style>
#map {
height: 100%;
}
/* Optional: Makes the sample page fill the window. */
html, body {
height: 100%;
margin: 0;
padding: 0;
}
</style>
<body>
<div id="map"></div>
<script src="https://maps.googleapis.com/maps/api/js?key=[my api key here]&callback=initMap" async defer></script>
</body>
任何帮助/想法都是合适的,谢谢!
答案 0 :(得分:0)
所以我终于找到了解决方案(至少对我的环境而言)。 在用较新版本替换collectionjs(由browserify制作)之后,一切都解决了。看起来像是全局命名空间(或者你称之为的任何东西)。
不知道这是否是已知/常见问题(如果有,请告诉我)。如果有人遇到确切的情况,请提出我的解决方案。
再一次,感谢所有想要帮助的人!