google-places-api - 在 Google Places Autocomplete 上查找地址时获取城市 place-id

标签 google-places-api google-places

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

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

提前致谢

最佳答案

没有直接的方法可以从该城市地址的自动完成中获取该城市的地点 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=...) 给出了 ChIJOwg_06VPwokRYv534QaPC8g 的地点 ID。

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

关于google-places-api - 在 Google Places Autocomplete 上查找地址时获取城市 place-id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34907666/

相关文章:

swift - 在搜索栏中弹出表格 View ,swift 2

ios - Swift 从 api 可能的线程问题中获取值(value)

ios - iOS 6.1 中的 Google Places API 存在问题吗?

google-maps - Google Place API 问题

google-maps-api-3 - Google Places Autocomplete 建议与 Unit No/Subpremise 没有出现在响应数组中

javascript - 如何使用下拉菜单为 Google Places Autocomplete 设置边界

javascript - 使用 react-places-autocomplete 只希望城市和相关国家在建议中

javascript - Google Place Autocomplete Address API 强制 HTML Autocomplete = Off

android - 如何从 Google Places API 获得 20 多个结果?

javascript - Google Places API - 返回无效的街道号码