Foursquare API: поиск мест по всему городу - PullRequest
0 голосов
/ 20 января 2012

Можно ли искать места (через места / поиск) по всему городу, не передав параметр "радиус"? Потому что я не знаю радиуса каждого города :) В документации сказано, что "поиск может быть выполнен около точки или по всему городу", но как я могу предоставить это в местах / поиске?

Спасибо.

Ответы [ 3 ]

3 голосов
/ 15 июня 2012

Вы можете получить результаты в пределах города следующим образом:

https://api.foursquare.com/v2/venues/search?near=Singapore,Singapore&client_id=YOUR_CLIENT_ID
&client_secret=YOUR_CLIENT_SECRET3&v=YYYYMMDD

Более подробную информацию смотрите в документации:

https://developer.foursquare.com/docs/venues/explore
3 голосов
/ 21 января 2012

Я не думаю, что есть способ сказать ему "поиск по всему городу", но я также думаю, что это может быть неправильный вариант использования.

Вам нужно запомнить несколько вещей при поиске:

  1. Foursquare выдаст до 50 результатов (параметр limit)
  2. 50 результатов упорядочены по самым популярным местам в центре вашего поиска

Таким образом, если вы ищете город, в базе данных которого есть более 50 мест, «поиск по всему городу» обычно дает одинаковые (до) 50 результатов - всегда.

Здесь, где фильтры пригодятся, в нашем случае, чтобы получить лучшие результаты для наших нужд, мы используем categoryId в сочетании с радиусом, чтобы получить то, что мы хотим показать нашим пользователям. Иногда мы получаем информацию из других городов из-за большого радиуса, но для нашего приложения все в порядке, мы фактически предоставляем нашим клиентам больше возможностей :). Я также могу предположить, что многие приложения также используют фильтр запросов, поскольку они знают название места, которое они ищут.

Вам просто нужно поэкспериментировать с ним и узнать, как получить данные, которые подходят для вашего приложения.

Теоретически, для поиска по всему городу я использовал бы город широта / долгота из Google или Open Street Maps или географических названий и сделал бы 10-километровый поиск вокруг этой точки (intent = browse, radius = 10000). , но он получит 50 мест в более чем 99% городов, в которых живут люди, владеющие смартфонами:)

0 голосов
/ 23 января 2012

Если вы говорите о запросах с запросом, я бы просто установил разумное значение радиуса и использовал центр города по умолчанию.Если вы не хотите показывать результаты из соседних городов, вы можете выполнить фильтр после запроса по строке «city» возвращенного места в разделе местоположения.

...