我正在使用Google Maps Geocoding API来获取在商店定位器地址过滤器中输入地址的几何边界(东北,西南值)。
示例:
当我使用components=country:SG
参数搜索新加坡的地址(邮政编码,街道名称,地标)时,它只在address_components
结果集中提供一个值,并且此几何边界也是如此对于给定的地址,值不正确。
https://maps.googleapis.com/maps/api/geocode/json?address=14%20Scotts%20road&components=country:SG
当我使用region=SG
参数搜索新加坡的地址(邮政编码,街道名称,地标)时,它会在address_components
结果集中提供多个值以及此几何边界值对于给定的地址是正确的。
https://maps.googleapis.com/maps/api/geocode/json?address=14%20Scotts%20road®ion=SG
所以在这里我想知道这两种方法之间的区别和更好的调用方式(region=SG
vs components=country:SG
)。
答案 0 :(得分:3)
区域 - 区域代码,指定为ccTLD("顶级域")双字符值。此参数仅影响(而非完全限制)地理编码器的结果。 (有关详细信息,请参阅下面的Region Biasing。)
组件 - 组件过滤器,由管道(|)分隔。每个组件过滤器由一个组件:值对组成,将完全限制地理编码器的结果。有关详细信息,请参阅下面的Component Filtering。
当您在国家/地区过滤时,您会获得该国家/地区的结果(在您的示例中,结果是针对新加坡的国家/地区)。如果您对该地区有偏见,则返回的结果更喜欢该国家/地区的结果(听起来像您想要的那样),但不会将其限制在该国家/地区,并会返回地址的结果。