0

イベントを作成しようとしていますが、読んだすべてのチュートリアルが古くなっているか、機能しなくなりました。

[FBRequest
 startWithGraphPath:@"me/events"
 parameters:params
 HTTPMethod:@"POST"
 completionHandler:^(FBRequestConnection *connection,
                   id result,
                     NSError *error) {
     if (error) {
         NSLog(@"Error: %@", result);
     } else {
         NSLog(@"Success: %@", result);
     }
 }];

完了ハンドラーが呼び出されますが、HTTP エラー #403 が発生します。私は何を間違っていますか?

4

1 に答える 1

0

完了ハンドラーが HTTP/403 Forbidden を返す場合、認証に問題があります。Facebook セッションが有効でないか、まったく開いていない可能性があります。有効なセッションを確立する方法については、 Facebook iOS SDK チュートリアルをご覧ください。本質的には、次のようにする必要があります。

static NSString *PublishStreamPermission = @"publish_stream";
[FBSession
    openActiveSessionWithPublishPermissions:@[PublishStreamPermission]
    defaultAudience:FBSessionDefaultAudienceEveryone allowLoginUI:YES
    completionHandler:^(FBSession *session, FBSessionState status, NSError *error) {
        if ([session state] != FBSessionStateOpen) {
            // failed to open a valid session
        } else if ([[session permissions] containsObject:PublishStreamPermission]) {
            // session opened, permissions granted, now you can post
        } else {
            // session opened, but requested permissions not granted
        }
}];
于 2012-11-19T14:31:18.003 に答える