调用graph api Facebook ios时,facebookErrDomain错误10000

时间:2011-03-31 08:48:46

标签: iphone objective-c facebook graph

我正在努力使用图表api几天,我似乎无法再进一步了。

在我的appdelegate中,我在didFinishLaunching中放置了以下代码

facebook = [[Facebook alloc] initWithAppId:@"cut-app-id-out"];

    NSArray* permissions =  [[NSArray arrayWithObjects:
                              @"email", @"user_location", @"user_events", @"user_checkins", @"read_stream", nil] retain];

    [facebook authorize:permissions delegate:self];


    NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys: 
                                   @"test message from stackoverflow", @"message",                             
                                   nil];

    [facebook requestWithGraphPath:@"/me/feed" andParams:params andDelegate:self];

正如您所看到的,我正在尝试让用户反馈。我使用以下代码将数据放入正确的字典中。

- (void)request:(FBRequest*)request didLoad:(id)result
{

    if ([result isKindOfClass:[NSDictionary class]]) {
        NSLog(@"count : %d ", [result count]);
        NSArray* resultArray = [result allObjects];

        NSLog(@"count : %d ", [result count]);
        result = [resultArray objectAtIndex:0];

        NSLog(@"count : %d ", [result count]);
        result = [result objectAtIndex:0];

    }
}

但didFailWithError:函数给出了以下错误: 该操作无法完成。 (facebookErrDomain错误10000。)

我将FBRequestDelegate放在我的接口文件中,如下所示:

@interface TabbedCalculationAppDelegate : NSObject 
            <FBRequestDelegate>{

有什么我缺少的东西吗?

1 个答案:

答案 0 :(得分:1)

处理Facebook回复需要更多,特别是在授权之后。在authorize方法之后,您无法立即对Facebook API进行调用。请参阅their sample code,其中显示了如何回复您需要执行的各种活动,最重要的是fbDidLoginfbDidNotLogin。只有在您成功登录后才能访问图谱API。

此外,您似乎尝试使用Graph API发布消息。不幸的是,这不是这样做的方式,像[facebook requestWithGraphPath:@"me/feed" andDelegate:self];这样的调用只是为了只读使用。再次,请查看上面的链接,了解如何使用publish_stream权限的示例(其代码具有publishStream示例方法)。