Javascript 谷歌地图API在搜索多个边界时的限制?

Javascript 谷歌地图API在搜索多个边界时的限制?,javascript,api,google-maps,google-maps-api-3,Javascript,Api,Google Maps,Google Maps Api 3,我正在遍历一个边界数组 boundsarr[1] = new google.maps.LatLngBounds(new google.maps.LatLng(30.567183835166453, -81.72319182746412), new google.maps.LatLng(31.05927189755539, -81.68857520400456)); //boundsarr[2] = ... //continues... 并按关键字返回每个边界的位置。我能够获得60多个位置(

我正在遍历一个边界数组

boundsarr[1] = new google.maps.LatLngBounds(new google.maps.LatLng(30.567183835166453, -81.72319182746412), new google.maps.LatLng(31.05927189755539, -81.68857520400456));

//boundsarr[2] = ...

//continues...
并按关键字返回每个边界的位置。我能够获得60多个位置(这是API限制),因为我在搜索不同边界的位置,但当我有很多边界(例如100)时,位置只在3或4个边界中返回

这是一种行为。。。我不明白为什么会这样。我猜API在找到位置时会停止处理

如果你可能知道原因,请解释一下

  • 如果出现错误,您不会报告状态,如果您添加代码来报告错误,您会收到许多恼人的警报,报告零结果和超过查询限制

函数回调(结果、状态){
if(status==google.maps.places.PlacesServiceStatus.OK){
对于(var i=0;i
  • places服务受到配额和费率限制的限制,这样会引发一系列的查询

请参阅我的答案,它似乎可以返回边界数组的结果,但不确定它的可伸缩性(您的边界数组非常大)。

请输入一些代码?你在检查错误吗?听起来好像这些调用返回了错误(可能在查询上遇到了限制)。@geocodezip抱歉,这是一个示例。我在从迈阿密到纽约的2英里范围内搜索关键词。259个边界。正如你所看到的,它只返回一个区域的位置。谢谢!我知道如何通过places服务返回结果,但我正试图找出如何绕过查询限制。如果遇到查询限制错误,可能会创建多个请求。。。我不确定。我的建议是序列化您的请求(如我参考的问题中的示例所示),然后如果您的状态为OVER_QUERY_LIMIT,请使用setTimeout延迟一段时间,然后重试该请求。请注意,所需的延迟可能因谷歌服务器上的负载而异。但是,我怀疑对于这么长的路由(迈阿密到纽约),您不会希望这样做,因为这会花费太长时间,而且数据量也不会有用。可能最好的解决方案是支付每秒增加的请求。
    function callback(results, status) { 
      if (status == google.maps.places.PlacesServiceStatus.OK) {
        for (var i = 0; i < results.length; i++) {
          createMarker(results[i]);
        }
      } else alert("Places request failed: "+status);
    }