Facebook图表显示活动参加者

car*_*ars 1 php facebook-fql facebook-graph-api

我希望在PHP页面上显示给定facebook事件的与会者.理想情况下,显示人物图片的图形显示.

我相信这可以使用facebook图形API完成,但以下是给我一个需要签名的错误:

https://api.facebook.com/method/fql.query?query=SELECT uid FROM event_member WHERE eid =  ... AND rsvp_status = 'attending'
Run Code Online (Sandbox Code Playgroud)

另外,我怎么会得到开斋节?它可以简单地在事件页面链接的末尾解析吗?www.facebook.com/events/... EID#...

谢谢大家!

Jui*_*ter 7

要获取活动参与者,您可以运行以下FQL查询:

SELECT uid FROM event_member WHERE eid = "EXISTING_EVENT_ID"
Run Code Online (Sandbox Code Playgroud)

事件ID是您可以从许多来源获得的,如果您通过Graph API创建事件,您将获得事件ID作为响应.或者您可以获取当前/特定用户参加的活动ID.或者您已经从活动页面的URL中注意到了.

下一个FQL查询将返回当前用户正在参加的所有事件:

SELECT eid FROM event_member WHERE uid = me() AND rsvp_status = "attending"
Run Code Online (Sandbox Code Playgroud)

查询可以嵌套,因此您可以执行诸如获取当前用户参加过的所有事件的所有与会者的列表之类的内容:

SELECT eid, uid FROM event_member WHERE eid IN (
  SELECT eid FROM event_member WHERE uid = me() AND rsvp_status = "attending"
)
Run Code Online (Sandbox Code Playgroud)

要获取特定事件的与会者详细信息,可以执行以下操作:

SELECT uid, name, pic_square FROM user WHERE uid IN (
  SELECT uid FROM event_member WHERE eid = "EXISTING_EVENT_ID"
)
Run Code Online (Sandbox Code Playgroud)

笔记:

  • 您需要任何有效的access_token公共活动详细信息.
  • 要检索当前用户的事件,您需要user_events获得此用户授予您的应用程序的权限.
  • 您可以显示用户图像,只知道他的id为URL格式为 http://graph.facebook.com/{USER_ID}/picture
  • 您可以通过发出GET请求来使用Graph API运行FQL查询https://graph.facebook.com/fql?q={QUERY_HERE}

有关FQLGraph API读取文档的更多详细信息,尤其是关于表event_memberuser