Получать события друзей с помощью Facebook C # SDK слишком медленно - PullRequest
2 голосов
/ 21 сентября 2011

Я пытаюсь получить все события от всех моих друзей на Facebook, используя Facebook SDK для C #. Единственная проблема у меня в том, что это слишком медленно.

Вот как я это делаю:

  • Получить список всех друзей - client.Get("me/friends");
  • Перебирайте всех друзей, используя foreach
  • Для каждого друга получите список всех его событий - client.Get("friend_id/events");
  • Объединить все списки

Результат - то, что я ожидаю, но весь процесс длится несколько минут. Есть ли способ собрать события всех друзей за один раз или любое другое решение, чтобы ускорить это?

Спасибо!

Ответы [ 2 ]

1 голос
/ 21 сентября 2011

Вы также можете поэкспериментировать с одновременной группировкой 20 друзей, используя пакетные запросы , но выполнение FQL-запроса для таблицы событий , вероятно, будет быстрее.

1 голос
/ 21 сентября 2011

Возможность построить FQL Query (Facebook Query Language Query)

SELECT name, venue, location, start_time FROM event WHERE eid  in
(SELECT eid FROM event_member 
where uid in
(SELECT uid2 FROM friend WHERE uid1 = me()))
...