2012-02-16 5 views
0

Использование GraphAPI, я вижу, вы можете запросить местоположение конкретного друга или найти друзей по критериям.Как искать друзей вокруг меня с помощью API Facebook?

Однако я не смог найти способ поиска друзей в своей области. Я хочу выполнить поиск и получить результаты друзей, которые находятся в радиусе X метров от меня.

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

EDIT: Я нашел подобный вопрос (и ответ) используя FQL: facebook fql query similar to friends checkins

ответ

1

ну, вы частично ответили сами там ...

При запросе о другом пользователе, вы получите его местоположение, а так как это часть объекта пользователя (если у вас есть права доступа конечно): http://developers.facebook.com/docs/reference/api/user/

Проблема, как вы писали, заключается в том, что вам нужно будет отправить запрос в facebook для друга, что не подходит для этого. К счастью, facebook уже подумал об этом, и они придумали «Batch Requests»: http://developers.facebook.com/docs/reference/api/batch/, который позволит вам сделать именно это.

EDIT

Теперь, когда я думаю об этом, это проще, чем я писал раньше, не нужно даже запросы партии, так как вы можете получить все пользовательские друзей в одном запросе на: мне/друзья. Предполагая, что пользователь предоставил вам необходимые разрешения, каждый объект пользователя в списке друзей также будет иметь объект местоположения.

Для каждого друга подсчитайте, находится ли его местоположение в желаемом радиусе.

+0

Спасибо, но я искал одного запроса, который может просто вернуть мне массив друзей вокруг меня без дозирования 500 запросов. –

+0

Кроме того, пакетные запросы ограничены 50 запросами. –

+1

Я думаю, что вам не хватает точки графика api. Api просто дает вам узлы графиков и их подключения к другим узлам, но различные приложения используют алгоритмы графа и придумывают разные вещи, связанные с ними. Я могу попросить всех моих друзей, у которых есть радиус X от меня, исходя из числа подобных нам, которые у нас есть. вы не можете ожидать, что facebook выполнит все доступные приложения своего графика –

1

Кроме того, вы можете получить друзей местоположение и родной город с помощью этой Graph API конечной точки: /мне/друзей поля = место, родной город, имя

Но вы будете нуждаться в friends_location и friends_hometown разрешения.

Подробнее: https://developers.facebook.com/docs/reference/login/extended-profile-properties/

+0

Спасибо, но используя это, я могу получить их точное местоположение (и сравнить с моим). Я искал способ получить свою широту/долготу. –

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