私はNodeJsを使用してジオコーディングWebアプリケーションを作成しています。ジオコーディングは、私がエラー620の40%をGoogleから持っていることを除いてうまくいくので、私はジオコードに多くのアドレスを失っています。NodeJs&Google Geocoder API
エラー620:http.get(....)が、Google Webサービスに対してgetリクエストを非常に速くしているためです。
私はsetTimeout(requestGeocod(place、client、details)、1000)を試しましたが、NodeJSは正常にrequestGeocodを起動します。
リクエストの100%を得るために変更することはできますか?
/*GOOGLE MAPS GEOCODING API QUERY*/
function requestGeocod(place, client, details){
var options = {
host: 'maps.google.com',
port: 80,
path: '/maps/geo?'+ query.stringify({"q":place}) +'&output=json&oe=utf8/&sensor=false&key='+api
};
console.log("Requête : " + options.path)
http.get(options, function(res) {
console.log("Got response: " + res.statusCode);
res.setEncoding('utf8');
res.on('data', function(chunk){
client.emit('result', {"chunk":chunk, "details":details})
})
res.on('end', function(){
console.log("Fin du GET");
})
}).on('error', function(e) {
console.log("Got error: " + e.message);
client.emit("error");
})
}
事前にお願い致します。
(それが最初の実行では動作しない場合がありますので、私はそれをチェックしませんでした)コードの例ですか? 'setTimeout(requestGeocod(place、client、details)、1000)'はレートを変更せず、クライアントの待ち時間を追加するだけです –
クライアントは非常に高速です。クライアント側のsetTimeoutを使用して1秒ごとにrequestGeocod(場所、クライアント、詳細)を呼び出しました。 – Servernumber