目前我正在做一個project, 會用到google direction API
以及geometry library (主要是用裡面的某一個islocatededge function)
大概介紹一下project目的:
跑迴圈, 每次送一對起終點, 然後用directionservice算route
然後用isLocationOnEdge來看是否我在意的一些路口有在route上
因為google在query數量上有限制, 因此我每兩秒才送一個query
(我目前用settimeout)
但發現程式執行到大約270左右個query時, gogole就開時回傳over limit query的status
因此想要動態延長等待的時間,
但因為我的迴圈中的setimeout是類似這樣做
function doSetTimeout(a,b) {
setTimeout(function() {
getRoute(a, b); //抓路口是否在route上的function
}, times*2000);
times++
}
感覺像是一開始就把query都ready to send out, 只是隔兩秒才會真正發送出去
請問有辦法動態調整等待時間嗎?
或是讓程式暫停
在if (status == google.maps.DirectionsStatus.OVER_QUERY_LIMIT) 時
我查過似乎javascript沒有這種功能?)
或是有其他更好的作法呢?
謝謝!
ˇ