这是我的字符串,我正在传递给地理编码服务。
其中region = GB是英国的国家代码,而不是伦敦我在Lindon。 Componentrestrictions = locality应仅适用于城市!
但是我的结果又回到了美国的一些地方!!
这不是您对谷歌地理编码器使用组件限制的方式吗?
如果传递'Lindon',我不希望看到任何结果,特别是对于美国。
答案 0 :(得分:0)
添加",GB"用于地址参数。
http://maps.googleapis.com/maps/api/geocode/xml?sensor=false&address=Lindon,UK®ion=GB&componentRestrictions=locality&language=en
区域参数只是"偏置",不限制区域。 https://developers.google.com/maps/documentation/javascript/geocoding#GeocodingRegionCodes
根据我的经验,添加国家/地区代码,邮政编码,适用于所有大多数情况。
答案 1 :(得分:0)
componentRestrictions
(此参数属于Javascript-API),Webservice的参数称为components
locality
)和一个值。在您的情况下,当您想要搜索名为 Lindon 的城市时,它应该是locality:Lindon
region
- 参数不会限制结果,它只会偏好给定区域的结果。
如果要将结果限制为GB,请使用组件country:gb
。城市华盛顿的示例请求(因为似乎没有城市Lindon in the UK)
http://maps.googleapis.com/maps/api/geocode/xml?components=locality:Washington|country:gb