Google maps 谷歌地图API方向限制
我使用GoogleMapsAPI制作了一个地图,为多个用户显示到一个公共目的地的方向多段线。因此,每个用户都有自己的多段线同时显示在地图上 问题是返回的多段线数量似乎有限制。当我有超过10个用户时,我将停止接收多段线数据。(最后添加到地图的用户不会获得多段线)。我可能会指出,load函数似乎仍然有效(没有调用错误事件侦听器),但我要么没有获取多段线数据,要么它拒绝绘制地图 每次绘制的多段线的数量都略有不同,这让我觉得谷歌不喜欢一次从同一个用户那里收到这么多请求,但我不能确定 有人知道如何避开这件事吗?我曾尝试提供纬度和经度,而不是地址字符串,以减少工作量,但这似乎对绘制的多段线的数量没有任何影响。根据,您应该能够每天发出10000个GDirections请求,而不会被Google限制。然而,我在GoogleMapsAPI组中发现了一个建议,即有一个单独的节流机制,根据您发出请求的速率返回620个HTTP错误 从您的问题来看,您的错误侦听器似乎没有被调用,因此这不太合适。但我还没有从谷歌找到关于这种行为的官方描述,所以我不确定Google maps 谷歌地图API方向限制,google-maps,Google Maps,我使用GoogleMapsAPI制作了一个地图,为多个用户显示到一个公共目的地的方向多段线。因此,每个用户都有自己的多段线同时显示在地图上 问题是返回的多段线数量似乎有限制。当我有超过10个用户时,我将停止接收多段线数据。(最后添加到地图的用户不会获得多段线)。我可能会指出,load函数似乎仍然有效(没有调用错误事件侦听器),但我要么没有获取多段线数据,要么它拒绝绘制地图 每次绘制的多段线的数量都略有不同,这让我觉得谷歌不喜欢一次从同一个用户那里收到这么多请求,但我不能确定 有人知道如何避开这件
您是否能够缓冲GDirections请求并降低请求速率?这可能是一个很好的测试,可以查看您是否受到请求速率限制机制的影响。我只是做了一些非常简单的事情,如下所示。我创建了一个数组,其中包含了我要预先添加的所有方向。我循环浏览我的方向,添加一个标记(我在方向上添加一个单独的标记,这样即使方向无法绘制,也会有一个标记),然后调用setTimeout函数来安排方向调用,这样Google就不会一次获得所有方向。然后我将毫秒的值增加了大约250(可能需要使用这个值)
希望这能有所帮助。终于找到了如何缓冲请求的方法,而且似乎很有效:)如果我在每次调用之间留出250毫秒,我似乎就能得到所有结果。我画了32条多段线中的32条。我还没有测试过更高的,但是对于大多数情况来说,这应该足够好了。太棒了。很高兴你把它整理好了。谢谢你提供的信息,我想问你一个问题(可能有点幼稚)——他们有没有其他在地图上画路线(方向)的方法(这将永远免费)。
var milliseconds = 0;
for(i in directions){
addMarker(directions[i]); //I place the marker separate to the direction so that there is always a marker even if the direction fails to draw.
setTimeout( function(){
addDirection(directions[directionCounter]); //This is my function that makes the direction request to Google
directionCounter++;
}
, milliseconds);
milliseconds += 250;
}