繁体   English   中英

Google maps api无法加载地图图块

[英]Google maps api fails to load map tiles

我有谷歌地图api v3嵌入到我的网站,这一切都很好,直到几周前。 在最近几周内,地图图块(只有地图,卫星图块始终正常工作)不时加载几个小时,有时几天。 除此之外,我得到以下两条403错误消息:

[Error] Failed to load resource: the server responded with a status of 403 
(Forbidden) (ViewportInfoService.GetViewportInfo, line 0)
http://maps.googleapis.com/maps/api/js/ViewportInfoService.GetViewportInfo

[Error] Failed to load resource: the server responded with a status of 403 
(Forbidden) (AuthenticationService.Authenticate, line 0)
http://maps.googleapis.com/maps/api/js/AuthenticationService.Authenticate

看起来身份验证出错了。 但是,我远不及每天拨打api的最大数量。 此外,地图控件以及卫星图块(当我切换到它们时)加载没有问题。

这个问题每周几次随机发生几次,直到一整天。 大部分时间一切正常。

有没有人遇到过这样的问题,或者有什么可能出错的想法?

更新2016年2月:仍在处理同样的问题

仔细检查后,似乎每次更新网站后,地图图块都会工作几天,然后再次显示403条消息。

谷歌开发者控制台中的使用情况统计数据显示,我每天几乎不会超过100个请求,因此使用限制应该不是问题。

到目前为止,我确实请求了一个新的API密钥,看看这是否会有所帮助。 我改变了密钥之后,比如在网站更新几天之后一切正常,但是现在我们又回到了同样的旧情况

所以,最后这似乎得到了解决。 原来问题是我用symfony的资产处理了包含的谷歌地图javascript文件。 这导致文件缓存在我的网络服务器上,并从那里提供给我的用户,这反过来触发谷歌的安全措施,以防止瓦片刮,导致403响应。

解决方案非常简单,使用简单的<script src=".."></script>标签而不是assetic和twig的{% javascripts '..' %}标签。

为什么这只会导致地图问题,而不是卫星图像,我不知道!

在WordPress网站上解决了GMaps API上的相同问题。

问题是由积极的缓存引起的。

清除W3 Total Cache现在解决了这个问题。 设置不太激进的缓存策略应该可以防止问题再次发生。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM