1

Facebook SDK 3.0を使用してユーザーにログインしていますが、そのFBIDとFBセッショントークンを正常に取得しています。

`NSDictionary<FBGraphUser> *user.id` (FB ID)

および [FBSession.activeSession accessToken](FBセッショントークン)

今、私は私のアプリ内の投稿が好きになりたいです。だから私はPOSTリクエストを作成し、このようなパラメータを渡します

NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[NSString stringWithFormat:@"https://graph.facebook.com/%@/og.likes",@"34856345..."]] cachePolicy:NO timeoutInterval:5.0];
    [urlRequest addValue:@"BAAGjjgD8bhUBAM73jzkpy23zlHo7e8ZAqPaOGvbxU..." forHTTPHeaderField:@"access_token"];
    [urlRequest addValue:myshareLink forHTTPHeaderField:@"object"];
    [urlRequest setHTTPMethod:@"POST"];
    NSURLConnection *theConnection = [[NSURLConnection alloc] initWithRequest:urlRequest delegate:self startImmediately:YES];
    [theConnection autorelease];

しかし、私はこのエラーが発生しています

 result:{"error":{"message":"An access token is required to request this resource.","type":"OAuthException","code":104}}

しかし、CURLコマンドから同じアクセストークンとユーザーIDを使用すると、正常に投稿されます。

curl -X POST -F 'access_token=BAAGjjgD8bhUBAE8XmogjJZAZAPyJ8SUyxkllJQ...' -F 'object=http://xyz.com/abc/gallery.php#pic/pic2/' https://graph.facebook.com/732../og.likes

私が欠けているものを理解するのを手伝ってください。

ありがとう

4

1 に答える 1

0

NSURLConnection と NSMutableURLRequest を使用するよりも、iOS Facebook SDK にある FBRequestConnection と FBRequest クラスを使用することをお勧めします。Facebook では、Facebook SDK が自動的に生成する iOS レベルの追加のヘッダー値が必要だと思います。

同様のアクションについては、FBRequest クラス メソッド requestForGraphPath を使用してリクエストを作成しました。FBRequestConnection に渡す前に、FBRequest に httpMethod および session フィールドを設定することを忘れないでください。

于 2013-10-02T18:18:54.703 に答える