2

使用 google geocoding api v3 时,我有一些完整且有效的地址,其中包含美国州名作为房屋名称或街道名称的一部分。谷歌将其解释为在美国,即使包括国家/地区在内的完整地址也包括在内。

eg(这是一个虚构的地址,因为我无法发布真实的客户详细信息,但原理是一样的)。纽约农场主街 St Hellier JE1 1AA JERSEY

http://maps.googleapis.com/maps/api/geocode/xml?sensor=false&address=New%20York%20Farm%2cMain%20Street%2cSt%20Hellier+%2c%2cJE1+1AA%2cJERSEY

如果我错过了“纽约农场”行,或者在末尾添加了“英国”,则会返回正确的地理编码。但显然这很难自动完成(特别是因为泽西岛不在英国),而且我有很多地址可能还有其他类似的案例。如果我传入一个区域参数,它仍然有同样的问题。

有没有办法可以“强迫”这个国家?

4

1 回答 1

1

您可以使用“区域偏差”或“视口偏差” - 两者都应该为您提供与指定区域更相关的结果。您可能想要区域偏差 - 他们甚至给出了这个例子:

您可以使用 region 参数设置地理编码 API 以返回偏向特定区域的结果。此参数采用指定区域偏差的 ccTLD(国家代码顶级域)参数。大多数 ccTLD 代码与 ISO 3166-1 代码相同,但有一些明显的例外。例如,英国的 ccTLD 是“uk”(.co.uk),而其 ISO 3166-1 代码是“gb”(技术上是“大不列颠及北爱尔兰联合王国”的实体)。

实际上,添加&region=uk到您的查询中会使其返回适当的位置

于 2011-06-01T12:06:35.967 回答