4

我一直在使用 Google Maps API 进行一些基于位置的搜索(对我而言,这更像是一个结构性问题,而不是对映射 api 的任何批评)

例如,如果用户搜索“加拿大维多利亚”,它将按预期显示“加拿大维多利亚”的结果。但是,如果用户搜索“加拿大”,Google 会返回该国中部的经度和纬度,这对于正确居中地图至关重要。但是,它不会显示任何结果,因为最近的位置距离 google 返回的位置太远。我正在过滤掉大约 20 英里外的结果。

Google Maps API 能否返回任何我可以用来判断用户是否输入了州或国家/地区名称的信息?如果没有,是否有人开发了解决方案?

理想情况下,我想避免仅按最近的位置对结果进行排序。当用户搜索“美国”时,我不希望“西班牙”的项目出现在列表底部。我会尝试在搜索之前确定查询是州还是国家,但鉴于国家和地区名称的可能拼写不同,这似乎是一项非常艰巨的任务。如果我只期待英文拼写,那将是一种更容易的方法。

4

1 回答 1

0

假设这是一个站点上的表单,它有一个控制器解析表单并将请求发送到 Google 的 API,您可以将表单分解为地址、城市、州和国家/地区(如果需要)表单元素,然后生成地址和城市必填字段。

我正在使用 Google Places API 构建的网站采用类似的方法,它似乎对我有用。

于 2013-02-07T18:37:38.290 回答