私は緯度と経度の座標値に変換しアドレスするためにジオコーディングAPIを利用しています。私は結果を受け取りますが、の緯度と長いは空です。他のSOの投稿によると、ジオコーダのリクエストは非同期であり、Googleはデータを十分に速く返すわけではありません。私はそれが問題なら、私のコードのためにこれを修正する方法を理解していません。GoogleマップのジオコーディングAPiが緯度と経度を返さない
var coords = [];
var address = '1600 Pennsylvania Ave NW, Washington, DC 20500';
var geocoder = new google.maps.Geocoder();
geocoder.geocode({'address': address}, function(results, status) {
if (status === google.maps.GeocoderStatus.OK) {
coords[0] = results[0].geometry.location.lat();
coords[1] = results[0].geometry.location.lng();
}
else {
coords = 'Could not retrieve coordinates for: ' + address;
}
});
return coords;
私がよく知られているアドレスを使用しても、私はまだ緯度または経度を取得しません。
結果は、オブジェクト:
は、これは本当に問題ですか私が使用しているコードに何か問題はありますか?これをどうすれば解決できますか?この問題を解決するために、これを使用して終了
非同期コールバック関数から何も返すことはできません。存在するとき/そこにあるデータを使用する必要があります – geocodezip
次に、このドキュメントの要点を示します。https://developers.google.com/maps/documentation/ javacript/geocoding ジオメトリ:{location:LatLng} ...など、返されるすべての情報が必要です。 – JsusSalv
なぜdownvote?これは正当な質問です。問題またはドキュメントを理解できない場合は、質問してください。これは公開されたAPIであり、他のユーザーは適切に対処されていない問題がありました。 – JsusSalv