Was Sie suchen, wird als umgekehrte Geokodierung bezeichnet . Google bietet über die Google Geocoding-API einen serverseitigen Reverse- Geocodierungsdienst an , den Sie für Ihr Projekt verwenden sollten.
So würde eine Antwort auf die folgende Anfrage aussehen:
http://maps.googleapis.com/maps/api/geocode/json?latlng=40.714224,-73.961452&sensor=false
Antwort:
{
"status": "OK",
"results": [ {
"types": [ "street_address" ],
"formatted_address": "275-291 Bedford Ave, Brooklyn, NY 11211, USA",
"address_components": [ {
"long_name": "275-291",
"short_name": "275-291",
"types": [ "street_number" ]
}, {
"long_name": "Bedford Ave",
"short_name": "Bedford Ave",
"types": [ "route" ]
}, {
"long_name": "New York",
"short_name": "New York",
"types": [ "locality", "political" ]
}, {
"long_name": "Brooklyn",
"short_name": "Brooklyn",
"types": [ "administrative_area_level_3", "political" ]
}, {
"long_name": "Kings",
"short_name": "Kings",
"types": [ "administrative_area_level_2", "political" ]
}, {
"long_name": "New York",
"short_name": "NY",
"types": [ "administrative_area_level_1", "political" ]
}, {
"long_name": "United States",
"short_name": "US",
"types": [ "country", "political" ]
}, {
"long_name": "11211",
"short_name": "11211",
"types": [ "postal_code" ]
} ],
"geometry": {
"location": {
"lat": 40.7142298,
"lng": -73.9614669
},
"location_type": "RANGE_INTERPOLATED",
"viewport": {
"southwest": {
"lat": 40.7110822,
"lng": -73.9646145
},
"northeast": {
"lat": 40.7173774,
"lng": -73.9583193
}
}
}
},
... Additional results[] ...
Sie können sich auch dafür entscheiden, die Antwort in XML anstelle von JSON zu erhalten, indem Sie einfach XML in der Anforderungs-URI durch JSON ersetzen:
http://maps.googleapis.com/maps/api/geocode/xml?latlng=40.714224,-73.961452&sensor=false
Soweit ich weiß, wird Google denselben Namen auch für Adresskomponenten zurückgeben, insbesondere für übergeordnete Namen wie Ländernamen und Städtenamen. Beachten Sie jedoch, dass die Ergebnisse für die meisten Anwendungen zwar sehr genau sind, Sie jedoch gelegentlich Rechtschreibfehler oder mehrdeutige Ergebnisse feststellen können.