我希望通过输入地址或地理编码(lat,lng或IP)来获取郊区
By Suburb我的意思是以下内容。
英国邮政编码:EH11 1AF位于“Fountainbridge”的郊区。爱丁堡市内有许多郊区,如“Haymarket,Barnton,Corstorphine,Comely Bank”。
当我使用谷歌反向地理编码API时,例如:
/maps/api/geocode/json passing a lat,lng parameter
响应不包含郊区 - 请参阅: http://maps.googleapis.com/maps/api/geocode/json?latlng=55.958712899999995,-3.216021&sensor=true
是否有API可以帮助我根据地理编码或地址或邮政编码的任何部分派生郊区名称!?我正在努力寻找这样的服务
答案 0 :(得分:0)
结果geonames.org确实给了我需要的东西,看看这个:
Stockbridge的纬度和经度,有一个名称为stockbridge:http://api.geonames.org/findNearbyPlaceNameJSON?formatted=true&lat=55.958712899999995&lng=-3.216021&username=demo&style=full测试它,它似乎工作得非常好!
答案 1 :(得分:0)
我感到痛苦。
您从Google API获取了大量信息,而您想要的只是郊区。不要使用其他API。
如果我错了,请纠正,但你有两个选择:
选择1:遍历address_components,直到找到类型" locality"的组件。
选择2:尝试将JSON位置视为:
var guess = 5;
var level = responseJSON.results[0].address_components.length-guess;
var suburb = responseJSON.results[0].address_components[level].short_name;
我知道选择2并不是一个优雅的解决方案,我不会将它用于关键应用程序,但到目前为止它一直在为我工作。
当我在我正在编码的项目上传递我的原型时,我将编码选择1.哪个是寻找标记为type =" locality"的地址组件。
我希望它有所帮助。