谷歌地理编码器API返回的邻域类型是什么

时间:2012-08-02 14:31:42

标签: google-maps google-geocoding-api

当我的网站用户输入地址时,他经常这样做:

street_number street what_he_thinks_is_the_locality

当我存储或显示它时,我需要更好地显示它:

street_number street, true_locality

我使用地理编码器服务来提取地址组件,以便我可以正确格式化它。我依靠组件的类型来查找位置,我希望“locality”,“sublocality”或“administrative_area_level_3”。但今天我看到一个用户输入一个地址,并且该地点作为{“邻居”,“政治”}类型返回。

究竟是什么邻居?什么时候回来?是否返回是因为谷歌API检测到用户在结果的某个“附近位置”?返回此类型时,是否应该包含下一个地址组件以消除所有歧义?

由于

1 个答案:

答案 0 :(得分:8)

“社区”通常是城市中的一个小社区(通常是住房开发)。它与“sublocality”的不同之处在于它通常不是行政边界。

  • 示例1:SoHo(邻里),曼哈顿(sublocality / borough),纽约(地区/城市),纽约(administrative_area_level_1 /州)
  • 示例2:Cap-Saint-Jacques(邻里),Pierrefonds-Roxboro(sublocality / borough),蒙特利尔(地区/城市),QC(administrative_area_level_1 /省)

谷歌的地理编码器并不完美。它可能包含错误,例如纽约布鲁克林区的Bay Ridge Google returns Manhattan as the sublocality。同样,在上面的例子2中,Pierrefonds被列为sublocality,而不是Pierrefonds-Roxboro。

地理编码器有时也不完整。邮政编码02130在波士顿,但geocoder does not return a "locality"。它只返回牙买加平原附近。但是,如果您将Jaimaica Plain添加到Zip代码中,那么它确实会返回该位置(可能的解决方法,但它需要两个请求)。

您可能遇到的是后一种情况。目前尚不清楚触发它的条件。您需要考虑结果并非总是完整的事实。