2013-04-25 2 views
0

Должно быть, я ошибаюсь в категориях API-интерфейса Foursquare, и это сводит меня с ума.Категории Foursquare API

Когда я посылаю это:

https://api.foursquare.com/v2/venues/search?ll=44.874491,-93.328212&client_id=XXX&client_secret=XXX&v=20130327 

Я получаю все места, как я бы ожидать. Однако, если я делаю CategoryId для кафе, как так:

https://api.foursquare.com/v2/venues/search?ll=44.874491,-93.328212&categoryId=4bf58dd8d48988d1e0931735&client_id=XXX&client_secret=XXX&v=20130327 

я потеряю ближайшие кафетерии, которые первоначально обнаружились. В частности, тот, с которым я сижу, с адресом 7101 France Ave S. Такое поведение было нечетным.

И вот второй вопрос: поскольку Coffee Shop является категорией ниже Food, не должен ли я получать их, если я ограничу Food категории? Если я это сделаю:

https://api.foursquare.com/v2/venues/search?ll=44.874491,-93.328212&categoryId=4d4b7105d754a06374d81259&client_id=XXX&client_secret=XXX&v=20130327 

У меня нет ни одной кофейни. Это сводит меня с ума, и я знаю, что я должен пропустить что-то простое. Заранее спасибо!

ответ

3

Как указано в документах Foursquare на venues/search, вы должны указать параметр radius при использовании categoryId. Делать это с вашим поиском, кажется, возвращает лучшие результаты.

«Продовольствие» - это широкая категория, и, возможно, результаты, которые вы видите, являются «лучшими» матчами по разным причинам (популярность, близость и т. Д.). При использовании categoryId вы должны указывать radius. Вы также должны просмотреть различные intent s для мест проведения/поиска, чтобы узнать, какой из них лучше всего подходит для вашего приложения! Это может помочь, если вы начнете использовать этот параметр.

+0

Радиус зафиксирован. Я не думал попробовать, потому что документация немного неясна, на мой взгляд. Вы, ребята, должны изменить формулировку документации, чтобы сказать «вы должны также указать радиус», а не текущий «вы также можете указать радиус». –

Смежные вопросы