【问题标题】:Filter Google Places API results based on City根据城市过滤 Google Places API 结果
【发布时间】:2017-03-21 03:10:11
【问题描述】:

对于我的一个应用程序,我将让用户选择一个城市,然后选择一个区域。我想要实现的是根据用户的城市选择,区域字段(使用 Google Places 中的自动完成)来显示该城市的区域。例如:如果用户选择城市为纽约,区域字段应仅自动填充纽约的区域。这是可以实现的吗?

【问题讨论】:

  • 在这里查看我的答案,希望对您有所帮助:stackoverflow.com/a/62294304/4324194

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


【解决方案1】:

1] 在自动补全 API 中,在“location”参数中传递“Lat,Long”,在“radius”参数中传递“100000”。它将偏向该城市100Km内的搜索结果。 例如:为 NewYork 传递“40.7128,74.0059”,它将在纽约市 100Km 内为您提供结果。

2] 你可以使用一个技巧。如果用户选择一个城市,只需在搜索字符串中添加城市名称作为前缀。它只会给出用户正在搜索的搜索建议。例如,在搜索字符串中传递“NewYork”作为前缀,现在输入任何单词,它只会为您提供纽约市餐厅、咖啡馆、地点等的结果

【讨论】:

    【解决方案2】:

    您可以通过将自动完成的结果限制在指定区域来做到这一点。

    以下是您可以使用的方法:

    • Location Biasing - 您可以通过传递位置和半径参数将结果偏向指定的圆。这会指示 Place Autocomplete 服务更喜欢在该圈内显示结果。定义区域之外的结果可能仍会显示。您可以使用 components 参数过滤结果以仅显示指定国家/地区内的那些地方。

    • Location Restrict - 通过添加 strictbounds 参数,它可以将结果限制在由 location 和 radius 参数定义的区域。这指示 Place Autocomplete 服务仅返回该区域内的结果。

    • Places Types - 您可以通过传递 types 参数将来自 Place Autocomplete 请求的结果限制为特定类型。该参数指定类型或类型集合,如下面支持的类型中所列。如果没有指定,则返回所有类型。

    希望这些信息对您有所帮助。

    【讨论】:

      猜你喜欢
      • 2014-02-12
      • 1970-01-01
      • 2013-04-14
      • 2013-09-09
      • 1970-01-01
      • 2019-01-27
      • 2013-05-07
      • 2012-05-14
      • 1970-01-01
      相关资源
      最近更新 更多