2

我敢肯定,至少有 100000 款 iPhone 应用程序试图满足我的需求。

我们的 iPhone 应用在 UIWebView 中显示网页(文章)。每篇文章都有桌面版的Facebook 评论社交插件。在 iPhone 应用程序上,我想显示评论并允许用户使用本机访问令牌添加自己的评论(意思是,无需再次通过网络连接)。

为什么这个简单而基本的功能如此复杂?

在应用程序中,用户通过 Facebook 登录,所以我有访问令牌。我知道在移动版本中显示社交插件的选项,但在这种情况下,没有使用访问令牌的选项。

我经历的另一个选择是使用 Facebook Graph API,但在这种情况下我不确定:

  1. 如何将评论连接到网络上的同一篇文章 URL?
  2. 如何在没有添加“基于网络”评论的选项的情况下显示评论

请帮忙...

4

1 回答 1

3

您可以像这样获取评论的第一页:

    NSDictionary *params = @[@"ids" : pageId];
    self.connection =
        [FBRequestConnection
         startWithGraphPath:@"comments"
         parameters:params
         HTTPMethod:@"GET"
         completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
             // ...
         }];

其中 pageId 是包含社交插件的网页的 URL。评论以 JSON 形式返回。此响应包含一个用于获取下一页的 URL,您可以像这样获取它:

    FBRequest *fbRequest = [[FBRequest alloc] initWithSession:[FBSession activeSession]
                                                  graphPath:nil];
    FBRequestConnection *connection = [[FBRequestConnection alloc] init];
    [connection addRequest:fbRequest completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
        // ...
     }];

    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:moreCommentsURL];
    connection.urlRequest = request;
    [connection start];

您必须构建自己的解决方案来显示这些评论。

于 2013-03-07T16:19:40.260 回答