这是我传递给地理编码器服务的字符串。Google地理编码器组件限制无法过滤
其中区域= GB是英国国家代码和,而不是伦敦,我传递林顿。 Componentrestrictions =地点只适用于城市!
但我的结果回来了,在美国的一些位置!
这不是你如何使用谷歌地理编码器的组件限制?
如果'林登'通过了,我不希望在这里看到任何结果,尤其是不是美国。
这是我传递给地理编码器服务的字符串。Google地理编码器组件限制无法过滤
其中区域= GB是英国国家代码和,而不是伦敦,我传递林顿。 Componentrestrictions =地点只适用于城市!
但我的结果回来了,在美国的一些位置!
这不是你如何使用谷歌地理编码器的组件限制?
如果'林登'通过了,我不希望在这里看到任何结果,尤其是不是美国。
添加“,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
根据我的经验,添加国家代码,邮政编码,适用于大多数情况。
componentRestrictions
(此参数属于Javascript的API),用于web服务的参数被称为components
locality
)和的值。在你的情况,当你想搜索一个城市叫林顿应该locality:Lindon
region
-parameter不限制的结果,只会更喜欢从给定区域的结果。 如果要将结果限制为GB,请使用组件country:gb
。对于一个城市华盛顿采样请求(因为它似乎没有城市Lindon in the UK)
http://maps.googleapis.com/maps/api/geocode/xml?components=locality:Washington|country:gb
什么你林顿查询是7%?或者你为什么使用|在一个查询中和另一个%7中? – user1186050
您可以提供一个链接,指向“组件”而不是“组件限制”我使用此链接https://developers.google.com/maps/documentation/javascript/geocoding#ComponentFiltering – user1186050
%7是编码管道(使用多个组件时的分隔符)。我在答案中使用了Pipe(Lindon-Link已经被SO修改)。当您请求服务时,您应该始终对参数进行编码。 –