3

我需要将纬度/经度坐标转换为地址。我可以使用 Google Maps API,但我需要一个 XML 响应。我已经查看了Convert Lat Long 以解决 Google Maps ApiV2,但我需要能够在 JavaScript 中执行此操作。
我的问题是:如何将纬度/经度坐标转换为地址?

4

3 回答 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 脚本获取地址。您可以在应用程序中解析相同的地址以获取地址。

https://maps.googleapis.com/maps/api/directions/json?origin=27.6325&destination=85.1453=end&sensor=false

于 2014-09-11T09:27:23.547 回答