【问题标题】:google.maps.places.Autocomplete 502 errorgoogle.maps.places.Autocomplete 502 错误
【发布时间】:2018-04-19 00:20:32
【问题描述】:

我正在使用 google.maps.places.Autocomplete API,今天早上我收到 502 Bad Gateway 错误。它持续了大约 10 分钟,然后又开始工作。我认为这与服务不可用有关。

我想知道发生这种情况时如何处理错误。我的 (javascript) 自动完成代码如下所示:

$('#StartAddress').change(function () {
    google.maps.event.trigger(startAutocomplete, 'place_changed');
    return false;
});


var source, destination;
var directionsDisplay;
var directionsService;
if (typeof google === 'object' && typeof google.maps === 'object') {
    directionsService = new google.maps.DirectionsService();

    // set up places autocomplete
    var start = document.getElementById('StartAddress');
    var startAutocomplete = new google.maps.places.Autocomplete(start);

    var end = document.getElementById('EndAddress');
    var endAutocomplete = new google.maps.places.Autocomplete(end);

    // add the places auto complete listener for when the values change
    startAutocomplete.addListener('place_changed', function () {
        var startAddress = $('#StartAddress').val();
        var endAddress = $('#EndAddress').val();
        if (endAddress && startAddress) {

            GetRoute(startAddress, endAddress, false);
        }
    });

    endAutocomplete.addListener('place_changed', function () {
        var endAddress = $('#EndAddress').val();
        var startAddress = $('#StartAddress').val();
        if (endAddress && startAddress) {

            GetRoute(startAddress, endAddress, false);
        }
    });
    directionsDisplay = new google.maps.DirectionsRenderer({ 'draggable': false });
}

GetRoute(startAddress, endAddress, false) 函数是对 google.maps.Map 的调用,并且工作正常。只有自动完成服务出现故障。

另外,是否可能因为我使用的是开发人员密钥而不是生产密钥而发生此错误?像 google 的开发环境一样资源有限?

【问题讨论】:

  • 您的问题可能是:如何获取 google maps api 的所有错误?然后,您可以查找 502 错误并重新加载您的地理定位系统。 (但是,我没有找到办法)。

标签: google-maps-api-3 autocomplete google-places-api


【解决方案1】:

这次服务中断了。现在再试一次。

【讨论】:

  • 对,它又可以工作了,但是我想在服务关闭时捕获并让用户知道。我想知道服务 api 是否有您捕获的状态代码。似乎没有。我还想知道这个服务的生产实例是否不太容易发生这种情况。
  • 我在想这样的事情:if(google.maps.Autocomplete === 'object') 或在服务绑定中:endAutocomplete.addListener('place_changed', function (response, status),但是我看不到 addListener 的响应/状态参数。
  • 说实话,我以前从未见过这项服务。不要认为处理这个案子值得付出努力,但你一定能做到。
  • 好的。感谢您的信息
  • 将标记为答案,因为您知道服务已关闭。
猜你喜欢
  • 2012-05-25
  • 2018-08-11
  • 1970-01-01
  • 1970-01-01
  • 2014-12-14
  • 2017-03-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多