为什么以下Facebook fql查询没有返回任何数据?

时间:2015-12-16 10:58:32

标签: facebook facebook-graph-api facebook-fql

SELECT uid, name, sex FROM user WHERE uid IN (SELECT uid FROM event_member WHERE eid in(256178797901718) and rsvp_status='attending') order by name

查询的目的是获取所有用户的ID,姓名和性别,他们都参加了Facebook活动。

还有其他方法可以尝试使用Graph API吗?

  

Facebook API版本:2.0

     

事件ID:256178797901718

我已经通过删除rsvp_status条件尝试了其他方法,我收到除性别之外的用户数据。

2 个答案:

答案 0 :(得分:0)

不推荐使用FQL,不应再使用它了。这将是图谱API的正确终点:https://developers.facebook.com/docs/graph-api/reference/event/attending/

我不认为有可能获得性别,我只是尝试了一个示例调用,性别不在结果中:/[event-id]/attending?fields=id,name,gender

答案 1 :(得分:0)

问题不在于请求语法 - 这是权限问题。

请求gender字段需要public_profile权限 - 用户必须先登录您的应用并授予其权限,然后才能获得该值。

您可以使用自己参加的活动轻松测试:

登录您的应用(默认情况下授予public_profile权限进行网络登录),然后使用/[event-id]/attending?fields=id,name,gender作为luschn在他们的回答中建议请求参加活动的用户列表 - 您将看到,对于您自己的帐户,返回性别字段(对于参加之前已登录到您的应用的事件的其他用户,如果有的话) - 但对于其他所有人,它将不会被返回。