-1
我的應用程序從每隔幾個小時更新的文件中獲取地址,並對它們進行地理編碼並將它們放在谷歌地圖上。OVER_QUERY_LIMIT Google地理編碼API v3 AJAX
即使應用程序在幾天內還沒有被使用,Over_query_limit也會返回。
有些時候地理編碼成功了,其他地方甚至在沒有達到限制時也會返回over_query_limit。
如果在該地理代碼上達到over_query_limit,我在查詢上放置了3秒的延遲。然後重新運行具有相同地址的代碼以再次對其進行地址解析。
var xmlhttp
var status;
if (window.XMLHttpRequest){// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
}
else{// code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
var lAddress = tAddress.replace(/ /g, " +");
xmlhttp.open("GET","http://maps.googleapis.com/maps/api/geocode/json?address=" + lAddress +"&sensor=false", false);
xmlhttp.onreadystatechange = function(){
if (xmlhttp.readyState == 4 && xmlhttp.status == 200){
var result = JSON.parse(xmlhttp.responseText);
status = result.status;
if(status == google.maps.GeocoderStatus.OK){
precise[index].found = 1;
precise[index].lat = result.results[0].geometry.location.lat;
precise[index].lng = result.results[0].geometry.location.lng;
precise[index].addr = tAddress;
}
else if(status == google.maps.GeocoderStatus.OVER_QUERY_LIMIT){
alert("Search limit reached. Please try again tomorrow.");
}
}
}
xmlhttp.send();
爲什麼使用JavaScript的Web服務?使用[Google Maps JavaScript API v3地理編碼服務](https://developers.google.com/maps/documentation/javascript/geocoding)。 – geocodezip