FQL не возвращает всех моих друзей - PullRequest
2 голосов
/ 07 марта 2011

Я пытаюсь написать запрос, который будет возвращен с идентификаторами всех моих друзей.На данный момент мой запрос:

"SELECT name FROM user WHERE uid IN (SELECT uid FROM friendlist_member WHERE flid in (SELECT flid FROM friendlist WHERE owner = me()))"

Он возвращает пятую часть моих настоящих друзей (около 30 мужчин и женщин каждый).Я пытался играть с лимитом, но это ничего не дало (мне очень повезло, что я получил все свои сообщения на стене таким образом, но, к сожалению, здесь это не сработало).Я также попытался разбить его, поэтому сначала я получаю все списки друзей, которые у меня есть, затем все имена пользователей и все имена.Но когда я сделал это, я фактически получил меньше, и я также получил дубликаты!: S

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

Снова глядя на результаты, я начинаю думать, что друзья, которые не возвращаютсяте, которые установлены в списке друзей по умолчанию "Другие друзья".Все эти друзья, которые возвращаются, находятся в пользовательских списках друзей, которые я создал.

Я использую FacebookSDK C #, и он находится в форме Windows

1 Ответ

4 голосов
/ 07 марта 2011

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

Ссылка на страницу об этой таблице на сайте разработчика Facebook: http://developers.facebook.com/docs/reference/fql/friend/

Вам следует изменить подзапрос начто-то вроде:

SELECT uid1 FROM friend WHERE uid2=me()
...