FBRequestConnection无法正常工作

时间:2013-02-21 20:00:38

标签: ios objective-c facebook cocoa facebook-ios-sdk

在控制台中没有打印出任何内容,使用- (void)request:(FBRequest *)request didLoad:(id)result时我也没有收到任何信息

基本上我想要用户名,FB用户名和FB id 。有没有其他方法来获取此信息,因为此方法似乎不起作用。

- (IBAction)performLogin:(id)sender
{
    [self.spinner startAnimating];

    GIFAppDelegate* appDelegate = [UIApplication sharedApplication].delegate;
    [appDelegate openSession];
    FBRequestConnection* conn = [[FBRequestConnection alloc] init];
    [conn addRequest:[FBRequest requestForMe] completionHandler:^(FBRequestConnection *connection, NSDictionary<FBGraphUser> *me, NSError *error) {
        if(error) {
            NSLog(@"Error requesting user info");
            return;
        }

        NSLog(@"User's name is %@", me.name);
    }];
}

请注意,该方法的其余部分可以工作,而不是它的FBRequestConnection部分。 :)

3 个答案:

答案 0 :(得分:3)

我相信您刚刚开始使用新图SDK:

以下是您可以提取一些信息的方法:

//您的信息:

[FBRequestConnection startWithGraphPath:@"/me" parameters:nil HTTPMethod:@"GET" completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
    NSLog(@"result %@",result);
}];

//你的朋友信息

   [FBRequestConnection startWithGraphPath:@"me/friends" parameters:nil HTTPMethod:@"GET" completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
        NSLog(@"result %@",result);
    }];

同样,您可以提取更多信息。您应该阅读更多图形对象 - here。这就是您将了解所有可以提取的内容的方式。您也可以使用FQL在Facebook上查询。

希望这有帮助。

答案 1 :(得分:2)

添加请求后添加以下行:

[conn start];

答案 2 :(得分:0)

NSMutableDictionary* params =   [NSMutableDictionary dictionaryWithObjectsAndKeys:
                                 [NSString stringWithFormat:@"%ld", (long)10], @"score",
                                 nil];


dispatch_queue_t some_queue = dispatch_queue_create("some.queue.name", NULL);

dispatch_async(some_queue, ^{

    // [NSString stringWithFormat:@"%llu/scores", lintFBFriendId]

    [FBRequestConnection startWithGraphPath:@"APP_ID/scores"
                                 parameters:params
                                 HTTPMethod:@"GET"
                          completionHandler:^(FBRequestConnection *connection, id result,     NSError *error)
     {
         NSLog(@"result->%@");
     }
     }];

我想获取分数,但是当我将[FBRequestConnection startWithGraphPath:放入队列中但如果我删除队列它没有响应或打印数据

代码 - &gt;