【问题标题】:Does Google Maps API have session timeout?Google Maps API 是否有会话超时?
【发布时间】:2017-06-06 00:13:30
【问题描述】:

我正在 Angular 中构建一个信息屏幕应用程序,它在专用屏幕上显示各种有用的信息。我希望它在早上显示某些城市区域的道路交通。所以我使用带有交通层的谷歌地图来实现这一点。 我以这种方式创建地图:

ngAfterViewInit()
{
  this.map = new Map(document.getElementById('map'));
  this.traffic = new TrafficLayer({map: this.map});
  this.map.fitBounds(this.bounds);
}

并以这种方式显示组件:

<app-map
      *ngIf="layout == Layout.MORNING"
      id="map"
      [bounds]="{west: -0.4833681, east: -0.0807662, north: 51.716128, south: 51.5147982}"
></app-map>

并在我的 index.html 中加载谷歌地图库

<script src="https://maps.googleapis.com/maps/api/js?key=..."></script>

这几天一切正常,但地图显示为灰色,只有地图控制按钮。这很难调试,因为您需要至少等待两天才能重现问题。控制台中没有错误,也没有 4xx http 响应。在初始脚本加载给我之后,看起来有些会话超时/到期。可以通过每 24 小时重新加载整个应用程序来解决问题,但要寻找适当的解决方案。有什么想法可以挖掘吗?

【问题讨论】:

  • 我还注意到会话会在一段时间后过期。我知道的唯一解决方法是重新加载页面。

标签: angular google-maps google-maps-api-3


【解决方案1】:

是的,谷歌地图确实会超时。请参阅此错误报告:

https://issuetracker.google.com/issues/65212482

他们说“会话时间有限,如果要继续显示地图,则必须重新加载页面”。他们没有说明会话持续多长时间,也没有明确说明您可以通过任何方式(即使用地图)防止超时。

【讨论】:

    【解决方案2】:

    24 小时后 Google 地图会话超时。过期后,您将在开发者控制台中看到 NotLoadingAPIFromGoogleMapsError 错误。

    修复它的唯一方法是重新加载您的页面。

    【讨论】:

      猜你喜欢
      • 2011-03-26
      • 2019-06-01
      • 2011-09-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-01
      • 1970-01-01
      • 2013-04-05
      相关资源
      最近更新 更多