我需要将纬度/经度坐标转换为地址。我可以使用 Google Maps API,但我需要一个 XML 响应。我已经查看了Convert Lat Long 以解决 Google Maps ApiV2,但我需要能够在 JavaScript 中执行此操作。
我的问题是:如何将纬度/经度坐标转换为地址?
问问题
26439 次
3 回答
2
您可以使用 GeoNames 的FindNearestAddress。
它接受一个纬度和经度参数,并以 XML 格式返回最近的地址。
从例子:
http://api.geonames.org/findNearestAddress?lat=37.451&lng=-122.18&username=demo
<address>
<street>Roble Ave</street>
<mtfcc>S1400</mtfcc>
<streetNumber>649</streetNumber>
<lat>37.45127</lat>
<lng>-122.18032</lng>
<distance>0.04</distance>
<postalcode>94025</postalcode>
<placename>Menlo Park</placename>
<adminCode2>081</adminCode2>
<adminName2>San Mateo</adminName2>
<adminCode1>CA</adminCode1>
<adminName1>California</adminName1>
<countryCode>US</countryCode>
</address>
</geonames>
于 2013-07-11T21:24:59.733 回答
2
var geocoder = new google.maps.Geocoder(); // create a geocoder object
var location = new google.maps.LatLng(position.coords.latitude, position.coords.longitude); // turn coordinates into an object
geocoder.geocode({'latLng': location}, function (results, status) {
if(status == google.maps.GeocoderStatus.OK) { // if geocode success
var add=results[0].formatted_address; // if address found, pass to processing function
document.write(add);
来源 https://gist.github.com/marchawkins/9406213/download# 它对我有用
于 2015-01-28T11:39:56.833 回答
0
这是另一种方法。您可以使用以下 google api 作为 json 脚本获取地址。您可以在应用程序中解析相同的地址以获取地址。
于 2014-09-11T09:27:23.547 回答