2012-07-28 78 views
4

我想要通过距离获取我的位置顺序附近的所有餐馆。 我使用textsearch与谷歌地方使用此URL的API:https://maps.googleapis.com/maps/api/place/textsearch/json?query=restaurants&location=32.16107,34.806618&radius=200&sensor=true&key=api_key。我得到的结果是稀疏的,没有订单,所以如此。我尝试了rankby = distance,但是只适用于文档(https://developers.google.com/places/documentation/),您只能在常规搜索中使用它,这意味着使用textsearch时没有这样的参数选项(我试过了无论如何 - >不工作)。 我正在使用textsearch,因为常规搜索只返回“类型”:[“建立”]。 如何按距离排序google place api的textsearch?我无法相信谷歌没有创建一个方法去做...如何根据距离排序搜索结果,使用textsearch搜索API位置

回答

6

你是对的,Places API Textsearch不支持rankBy=distance参数。如果您认为这将是一个有用的功能,请提交Places API Feature Request

但是,您可以得到您通过执行使用rankBy=distance参数和keyword=restaurant参数Places API的搜索请求寻找的结果是:

https://maps.googleapis.com/maps/api/place/search/json?keyword=restaurant&location=32.16107,34.806618&rankBy=distance&sensor=false&key=YOUR_API_KEY

keyword参数对所有匹配可用字段,包括但不限于名称,类型和地址,以及客户评论和其他第三方内容。

+0

thx - 将尝试... – yehudahs 2012-08-02 13:11:44

+1

似乎工作,我会继续探索它。 – yehudahs 2012-08-02 13:56:53

+0

如何使用关键字或名称来匹配子字符串?例如,如果我正在寻找星巴克,并且用户在搜索字段“startbu”中键入内容,我希望它能显示附近的星巴克。 – 2014-07-29 04:42:28