通过Facebook iOS SDK获取我所有的活动
在我的iOS应用程序中,我使用以下代码获取访问令牌:
[self.facebook authorize:[NSArray arrayWithObjects:@"user_events", @"friends_events", nil]];
然后我用下面的代码请求我的事件:
[self.facebook requestWithGraphPath:@"me/events" andDelegate:friendsVC];
但作为回应,我只收到了我已经RSVP的事件。 我想要获得我所有的活动,包括我还没有RSVP的活动。
有任何想法吗?
您可以使用下一个FQL查询来获取事件列表,而不考虑其RSVP状态:
SELECT eid, name, venue, location, start_time FROM event WHERE eid IN ( SELECT eid from event_member WHERE uid = me() )
这不会为每个事件返回RSVP状态,而只是事件的细节。 您可能希望使用批处理请求来获取具有相同查询的事件的详细信息和rsvp_status
。
https://graph.facebook.com/?method=post&batch=[ { "name":"rsvp", "relative_url":"fql?q=SELECT+eid,rsvp_status+FROM+event_member+WHERE+uid=me()", "omit_response_on_success":false }, { "relative_url":"?ids={result=rsvp:$.data.*.eid}" } ]
有关您可能希望检索的其他字段的详细信息,请参阅event
和event_member
表文档。
笔记:
从7月5日开始,访问令牌将被要求访问甚至公共事件。
请求
/我/事件
只给你一个用户(可能)计划参加的事件。 响应不包括用户被邀请(但没有回应)或拒绝的事件。
还有其他的请求可能有帮助:
你可以检查一个用户是否被邀请参加这样一个活动:
/ EVENT_ID /邀请/ USER_ID
RSVP状态可以通过事件检查:
/ EVENT_ID /参加
/ EVENT_ID /也许
/ EVENT_ID /下降
/ EVENT_ID /邀请
每个请求返回一个查询RSVP状态的用户列表。
我想你可能会通过fql查询来获取事件 。 你需要尝试这个。
另请参阅此操作:使用graphicsAPIpipe理事件 。
您将需要HTTP从Graph API获取以下内容:
fql?q=SELECT uid,eid,rsvp_status FROM event_member WHERE uid = me()
您可以从该呼叫中取回所有状态。
{ "data": [ { "uid": "723020003", "eid": "19935786340002", "rsvp_status": "not_replied" }, { "uid": "723020003", "eid": "234524000290351", "rsvp_status": "attending" }, { "uid": "723020003", "eid": "210091000081240", "rsvp_status": "declined" }, { "uid": "723020003", "eid": "210091000341240", "rsvp_status": "unsure" } ] }
这不是一个完整的解决scheme,这可能不起作用,但看看是否有可能访问用户的Facebook活动的iCal饲料。 我订阅了我的iCal提要,并且注意到所有的事件,甚至是我还没有回复的新事件都包含在提要中。
有东西试试!
使用/ me / events获取用户已回复的事件, / me / events / not_replied用于其他用户。
例如(假设你已经创build了一个会话):
[FBRequestConnection startWithGraphPath:@"/me/events/not_replied" completionHandler:^(FBRequestConnection *connection, id result, NSError *error) { FBGraphObject* data = (FBGraphObject*)result; NSMutableArray* array = [data objectForKey:@"data"]; //parse data etc.. }];
有关更多信息,请参见https://developers.facebook.com/docs/graph-api/reference/v2.0/user/events/ 。
- 就像Firebase中的button一样
- SLComposeViewController不会为SLServiceTypeFacebook设置initialText
- FBSDKShareLinkContent未设置contentDescription和contentTitle
- fbDidLogin不被调用
- Facebook SDK使用Swift 3 iOS 10login
- 在UIWebView中播放Facebookvideo
- iOS Facebook的SDK – 获取与应用程序连接的朋友列表
- 具有返回值的iOS块
- Facebook对话框失败,错误:操作无法完成。 (NSURLErrorDomain错误-999。)