在 Facebook 应用程序中获取朋友的性别

Posted

技术标签:

【中文标题】在 Facebook 应用程序中获取朋友的性别【英文标题】:Get friend's gender in a Facebook application 【发布时间】:2010-12-12 20:30:12 【问题描述】:

在开发 Facebook 应用程序时,我通过

获得了用户的好友列表

$friends = $facebook->api('/me/friends');

但我只知道朋友的名字和Facebook ID:http://developers.facebook.com/docs/reference/api/FriendList

有什么方法可以得到朋友的性别吗?

这样做的一种方法是根据用户的 facebook ID(我使用朋友列表获得)来获取用户的性别(因为它是公开的)

上面的事情真的可以做到吗。 如果没有,还有其他方法吗?

供参考:http://developers.facebook.com/docs/reference/api/user

【问题讨论】:

如果不可能,请回答 您可以使用嵌套的 fql 查询来做到这一点。看到这个。 ***.com/questions/7307381/… 【参考方案1】:

Graph API

的快速方法
$facebook->api('me/friends?fields=id,name,gender,installed&access_token=[ACCESS_TOKEN]");

【讨论】:

是否需要传递访问令牌? $facebook->api 调用不会为你做这件事吗?【参考方案2】:

http://developers.facebook.com/docs/reference/api/FriendList = 一个人的恶魔列表(复数) - 例如:有限的个人资料

您要做的是从 graph.facebook.com/me/firends 获取 ID,然后为性别执行 graph.facebook.com/ID。但是,如果您的所有朋友都需要它,那当然会产生很多请求。

对于这些情况,您可以使用 FQL 查询:http://developers.facebook.com/docs/reference/fql/

您可以从他们的文档中采用以下查询:

SELECT uid, name, pic_square FROM user WHERE uid = me() OR uid IN (SELECT uid2 FROM friend WHERE uid1 = me())

这里是当前用户好友的姓名和性别:

SELECT uid, name, sex FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = me())

【讨论】:

不,我只需要一个特定朋友的性别(使用某种算法选择),所以你的第一次接触有效)。我只是自己想出来的,但是当我回来发布我的答案时,我在那里看到了你的,所以我不需要再写了。无论如何都喜欢你的 FQL 查询。

以上是关于在 Facebook 应用程序中获取朋友的性别的主要内容,如果未能解决你的问题,请参考以下文章

我如何从 facebook 公开资料 Facebook IOS Swift SDK 中获取性别

如何在应用程序中获取用户 Facebook 朋友的姓名、数量和 ID? [关闭]

Facebook Graph API 获取应用用户的朋友

邀请他们使用我的应用程序后,是不是可以获取 Facebook 朋友的 Facebook ID?

如何在 iOS 6 中获取 Facebook 好友?

Facebook API 获取朋友的朋友