私の開発用Googleマップについての助けが必要です。実際に、私は1つのアドレスをジオコードしようとすると、Googleは私にすべての情報を問題なく提供します。ジオコーダを使用したGoogleマップのマルチリクエスト
しかし、私はいくつかのアドレスをジオコードしようとすると、それは終了Googleは答えていないと私は応答がありません。
マイコード:
$.ajax({
type: "POST",
url: _URL_SITE + "webservices...",
dataType: "xml",
data: parameters,
//contentType: "application/soap+xml; charset=utf-8",
contentType: "text/xml; charset=utf-8",
headers: {
Accept: '*',
SOAPAction: 'http://127.0.0.1/...'
},
success: function (xml) {
var arr = new Array(30000)
var cpt = 1
var address = [];
var address_id = [];
var codepostal = "";
var i = 0;
$(xml).find('Table').each(function() {
codepostal = $(this).find('cp').text();
address[i] = $(this).find('record_id').text() + '|' + codepostal.substring(0,3) + '* ' + $(this).find('commune').text() + '' + '';
i++;
}); // fin de la fonction jquery
traitement(address);
},
error: function() {
alert('error');
}
})。ここ
とGoogleをresquest機能:
function traitement(addresses, callback) {
var coords = [];
var ville = "";
var cp = "";
var lattitude;
var longitude;
for (var i = 0; i < 50; i++) {
currAddress = addresses[i].split("|");
var geocoder = new google.maps.Geocoder();
geocoder.geocode({ 'address': currAddress[1] }, function (results, status) {
if (status == 'OK') {
var coords = results[0].geometry.location
lattitude = coords.lat();
longitude = coords.lng();
var latlng = new google.maps.LatLng(lattitude, longitude);
geocoder.geocode({ 'latLng': latlng }, function (results, status) {
if (status == google.maps.GeocoderStatus.OK) {
var elt = results[0].address_components;
for (i in elt) {
if (elt[i].types[0] == 'postal_code')
cp = elt[i].short_name;
if (elt[i].types[0] == 'sublocality')
ville = elt[i].short_name;
if (ville == "") {
if (elt[i].types[0] == 'locality')
ville = elt[i].short_name;
}
}
// function which save google's information
Save(currAddress[0], cp, ville, longitude, lattitude)
return;
} else { alert("error lat long"); }
});
} else { alert("error adresse"); }
return;
});
}
私はasynchrone要求などに関するいくつかの記事を読んだことがある。しかし、私はGoogleが私に0答えを与える理由を理解しようとしているとき「の」私のループの繰り返し50回以上の繰り返しです。
Thans you。
使用制限を超過している可能性があります。https://developers.google.com/maps/documentation/javascript/geocoding#UsageLimits – duncan
Googleのキーはプレミアムなので、この問題はここにはないと思います。 –