【问题标题】:Get city place-id when looking for an address on Google Places Autocomplete在 Google Places Autocomplete 上查找地址时获取 city place-id
【发布时间】:2016-01-20 18:24:34
【问题描述】:

在通过自动填充输入框查找地址时,我试图从城市或地区获取 Place-id。问题是,当我查找任何地址时,我可以获得城市名称和其他一些详细信息(JSON 格式),但是......

有没有办法直接从第一个查询中获取该地址城市(或村庄)的 place-id? 如果没有,最有效的方法是什么?

提前致谢

【问题讨论】:

标签: google-places-api google-places


【解决方案1】:

没有直接的方法可以从该城市地址的自动补全中获取该城市的地点 ID。

我建议是这样的:

  1. 获取自动填充结果,该结果提供特定地点的地点 ID。
  2. 获取该特定地点的详细信息,其中包含一组地址组件
  3. 使用 2 中的名称和位置搜索城市(或您想要的其他地址组件)。

例如:

  1. 自动填充 empire state build 结果的地点 ID 为 ChIJtcaxrqlZwokRfwmmibzPsTU
  2. https://maps.googleapis.com/maps/api/place/details/json?placeid=ChIJtcaxrqlZwokRfwmmibzPsTU&key=... 给出 40.7484404,-73.9856554 的位置和地址组件,例如:

    {
       "long_name" : "Midtown",
       "short_name" : "Midtown",
       "types" : [ "neighborhood", "political" ]
    },
    {
       "long_name" : "Manhattan",
       "short_name" : "Manhattan",
       "types" : [ "sublocality_level_1", "sublocality", "political" ]
    },
    {
       "long_name" : "New York",
       "short_name" : "New York",
       "types" : [ "locality", "political" ]
    },
    
  3. 使用位置和类型信息 (https://maps.googleapis.com/maps/api/place/nearbysearch/json?keyword=New+York&location=40.7484404,-73.9856554&radius=5000&types=locality&key=...) 搜索纽约会得到一个地点 ID 为 ChIJOwg_06VPwokRYv534QaPC8g

如果您愿意,您可以将步骤 3 替换为带有 types=(cities)(即 https://maps.googleapis.com/maps/api/place/autocomplete/json?input=New+York&location=40.7484404,-73.9856554&types=(cities))的地方自动完成查询。

【讨论】:

  • 谢谢!我会试试的。
  • @Oscar 你找到解决方案了吗?或者关于这个主题有什么要分享的?
  • 很遗憾我还没有找到最好的解决方案。
  • 我不敢相信谷歌需要被说服添加这个“功能”。这太基础了。
猜你喜欢
  • 2016-11-23
  • 1970-01-01
  • 1970-01-01
  • 2017-05-09
  • 2015-12-30
  • 2022-07-15
  • 1970-01-01
  • 1970-01-01
  • 2013-02-03
相关资源
最近更新 更多