【问题标题】:Get user shared video data from Facebook graph api从 Facebook graph api 获取用户共享的视频数据
【发布时间】:2014-12-06 20:50:59
【问题描述】:

我在我的应用程序中使用 Facebook 图形 API。我想获取用户发布的视频。当我登录时,我会得到基本信息。但是当我查询帖子时,我只会在结果中得到 id。 我的代码是:

-(void)getPosts {

NSMutableDictionary *par = [[NSMutableDictionary alloc]init];
[par setObject:@"posts" forKey:@"fields"];

[FBRequestConnection startWithGraphPath:@"me"
                             parameters:par
                             HTTPMethod:@"GET"
                      completionHandler:^(
                                          FBRequestConnection *connection,
                                          id result,
                                          NSError *error
                                          )
 {
     //handle the result
     if(!error)
     {
         NSLog(@"%@",result);
     }
     else
     {
         NSLog(@"%@",[error localizedDescription]);
     }
 }];

}

如果我做错了或遗漏了什么,请提供帮助。提前致谢

【问题讨论】:

    标签: ios objective-c facebook-graph-api


    【解决方案1】:

    来自 facebook dev API 的参考

    https://developers.facebook.com/docs/graph-api/reference/v2.0/user/videos

    您使用此方法登录了用户视频:

    /* make the API call */
    [FBRequestConnection startWithGraphPath:@"/me/videos"
                                 parameters:nil
                                 HTTPMethod:@"GET"
                          completionHandler:^(
                              FBRequestConnection *connection,
                              id result,
                              NSError *error
                          ) {
                              /* handle the result */
                          }];
    

    it's Filed object is

    您需要按照文档说明设置 user_videos 的第一个权限:

    需要具有 user_videos 权限的用户访问令牌才能查看该人被标记或已上传的所有视频。

    这里是示例代码:

    http://www.filedropper.com/fblogin

    【讨论】:

    • 当我使用这个时,我得到 data = ( );作为回应
    • 用上面的方法替换你的方法并在登录时设置权限
    • 如何在登录时设置权限。当我在 viewDidLoad 中设置权限时,loginView.readPermissions = @[@"public_profile", @"email", @"user_friends",@"user_likes",@"user_videos",@"user_photos"];
    • 具有以上权限,只需添加一个user_videos,最重要的是,是的,对在 Facebook 上分享视频的用户进行测试,否则您将无法重新处理
    • 检查我附上了从链接下载的示例代码,我只是更新了我的答案。
    【解决方案2】:

    1) 这是获取用户上传视频的基本逻辑...(显示用户发布到 Facebook 的所有视频)

    /* make the API call */
    [FBRequestConnection startWithGraphPath:@"me/videos/uploaded"
                                 parameters:nil
                                 HTTPMethod:@"GET"
                          completionHandler:^(
                              FBRequestConnection *connection,
                              id result,
                              NSError *error
                          ) {
                              /* handle the result */
                              arrFbUserUploadVideos= [result objectForKey:@"data"]; //get all data in NSMutableArray
                          }];
    

    注意:这会给视频用户上传..

    2) 并且如果您还想要在这种情况下 用户标签(显示所有使用人员被标记的视频)的视频列表

    /* make the API call */
        [FBRequestConnection startWithGraphPath:@"me/videos"
                                     parameters:nil
                                     HTTPMethod:@"GET"
                              completionHandler:^(
                                  FBRequestConnection *connection,
                                  id result,
                                  NSError *error
                              ) {
                                  /* handle the result */
                                   arrFbUserTagVideos= [result objectForKey:@"data"]; //get all data in NSMutableArray
                              }];
    

    注意:这会给视频用户标记..

    HERE IS A REFERENCE LINK:

    【讨论】:

    • 如何将视频从 Facebook 页面显示到我的 IOS 应用程序?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多