Google Places API正在删除某个地址中的sublocality_level_1。为什么呢?

时间:2018-05-28 02:20:11

标签: javascript google-maps google-maps-api-3 google-places-api

我正在使用Place Autocomplete Address Form来检索有关地址的信息。

它工作正常,但在某些地址,sublocality_level_1没有返回。

地址1:RuaBarãodeIpanema - 里约热内卢科帕卡巴纳 - 巴西里约热内卢州

  • 街:RuaBarãodeIpanema(地址类型:路线)
  • 邻里:Copacabana(addressType:sublocality_level_1)
  • 城市:里约热内卢(地址类型:administrative_area_level_2)
  • 州:里约热内卢州(addressType:administrative_area_level_1)
  • 国家:巴西(地址类型:国家)

地址2: Rua Clarimundo de Melo - 里约热内卢皮达德 - 巴西里约热内卢州

  • 街道:Rua Clarimundo de Melo(地址类型:路线)
  • 邻里:Piedade(缺少sublocality_level_1 addressType
  • 城市:里约热内卢(地址类型:administrative_area_level_2)
  • 州:里约热内卢州(addressType:administrative_area_level_1)
  • 国家:巴西(地址类型:国家)

在里约热内卢,“Copacabana”和“Piedade”是社区。是同一类型的信息。

我们还有其他例子:

  • 平均。 Vieira Souto - Ipanema,里约热内卢 - 巴西里约热内卢州(正确返回sublocality_level_1 - Ipanema)
  • Estrada Adhemar Bebiano - Del Casiro,里约热内卢 - 巴西里约热内卢州(请勿返回sublocality_level_1 - Del Castilho)

“Copacabana”,“Piedade”,“Ipanema”和“Del Castilho”都是社区。

但是,如果我插入STREET NUMBER,则会返回sublocality_level_1。查看示例:Rua Clarimundo de Melo,460 - Piedade,里约热内卢 - 里约热内卢州,巴西

所有这些测试均在Google Places API示例页面上完成:https://developers.google.com/maps/documentation/javascript/examples/places-autocomplete-addressform

我插入地址并使用Google Chrome检查器,我看到了返回的值。

其他两件奇怪的事情:

  • 格式化地址为:formatted_address: "Rua Clarimundo de Melo, Rio de Janeiro - RJ, Brazil" - 地址输入字段中的值不同
  • 网址中的查询字符串与地址输入字段不同:url: "https://maps.google.com/?q=Rua+Clarimundo+de+Melo,+Rio+de+Janeiro+-+RJ,+Brazil&ftid=0x997d3beb826455:0xbe0de6bc2d7d1c22"

我不知道为什么4个地址,具有相同的结构,有不同的回报。

有人知道为什么吗?我感谢任何帮助。

编辑1 - 强烈怀疑

多个社区

现在有些东西在我脑海里。 “Rua Clarimundo de Melo”和“Estrada Adhemar Bebiano”穿越了一些街区。

“RuaBarãodeIpanema”和“Av.Vieira Souto”只穿过一个街区。

我在其他两条街道上测试过:

  • “Avenida Ataulfo de Paiva - Leblon,里约热内卢 - 巴西里约热内卢州” - 只穿过Leblon(邻居)并返回sublocality_level_1

  • “AvenidaAtlântica - Leme,里约热内卢 - 巴西里约热内卢州” - 跨越2个社区(Leme和Copacabana)并且不要返回sublocality_level_1

    < / LI>

这是一种怀疑,因为没有在任何地方记录。这就是为什么它只是一种怀疑。怀疑,但怀疑。

如果我的怀疑是正确的,如果用户在输入中手动插入邻域,为什么不返回邻域?

目前尚不清楚。用户键入邻居...

反向地理编码

我在Geocoder Tools测试地址。 sublocality_level_1尚未退回。但是,如果我将坐标放在Reverse Geocodevòila中,则会返回sublocality_level_1

也许,这是一个解决方案,但我不知道是否是一个正确的解决方案。因为我需要向Google Places API发出2个请求以获取位置信息,并且请求有一个月的限制。 2个请求导致效率不足。

  • 请求1:获取地址信息。
  • 请求2:如果没有sublocality_level_1,请使用崇拜地理编码获取完整的地址信息。

0 个答案:

没有答案