我正在尝试使用谷歌地点 api,并注意到结果根据我搜索的位置存在严重偏差。我不希望这种情况发生。如果可能的话,我希望无论我从哪个位置搜索,结果都是一致的。有没有办法做到这一点?我已经尝试了具有经度/长偏差的文本查询和附近的搜索 API,但仍然遇到问题?这是我的第一个堆栈溢出问题,所以我提前为一个糟糕的问题道歉。
如果在实现中使用"地点搜索"请求,通常,返回的结果将基于用户的位置。
事实上,您可以在地点搜索请求中添加位置偏差,这会影响您设置的特定位置的结果。但是,这只会影响结果,而不会完全限制它位于您设置的位置内。即使在您设置的位置偏差之外,API 仍会返回更突出的位置。
根据您的用例,另一种方法是放置自动完成功能。有了这个,您可以获得与input
参数匹配的预测地点列表。对于放置自动完成功能,您可以通过在 API 请求中添加strictbounds
参数来限制结果,如下所示:
https://maps.googleapis.com/maps/api/place/autocomplete/xml?input=Amoeba&types=establishment&location=37.76999,-122.44696&radius=500&strictbounds&key=YOUR_API_KEY