7

Facebookでユーザーのプロフィール写真の大きなバージョンをリクエストしようとすると問題が発生します..私がやっているグラフパスで:

NSString *requestPath = @"me/?fields=first_name,last_name,gender,email,birthday,verified,picture";

そこの画像フィールドには、プロファイル画像の小さいバージョンしか表示されませんが、大きいバージョンと通常のバージョンが必要です..すでに画像をpicture_large、pic_large、image_largeに変更しようとしましたが、どれも機能しません..

お願いします、私はすでにドキュメンテーションを読んでいるので、もう一度読むように言うつもりなら、わざわざ答えないでください。

ありがとう、ニュートン

4

3 に答える 3

31

あなたが探している短い答えはpicture.type(large)

私は同じことを探していて、ここにあるFacebook Graph API エクスプローラーを使用して答えを見つけました。

次のコードを使用する場合:

[FBRequestConnection startWithGraphPath:@"me"
                             parameters:[NSDictionary dictionaryWithObject:@"picture.type(large),id,email,name,username"
                                                                    forKey:@"fields"]
                             HTTPMethod:@"GET"
                      completionHandler:^(FBRequestConnection *connection, id result, NSError *error){[self fbRequestCompleted:result];}];

「結果」ディクショナリの「画像」キーには、大きな画像の URL の値があります。

于 2012-09-10T14:54:51.593 に答える
20

あなたはただ使うことができます:

http://graph.facebook.com/USER/picture?type=large

ここで、 USERはユーザーIDまたはユーザー名のいずれかです。

これにより、ユーザーオブジェクトのドキュメントに記載されているように、静止画像のURLへのリダイレクトが返されます。

HTTP 302は、ユーザーのプロフィール写真のURLにリダイレクトします(別の写真をリクエストするには、?type = square | small | normal | largeを使用します)。

于 2012-06-04T14:19:38.623 に答える
6

Nitzan Tomer の応答は、iOS ではまだ正しいです。Facebook の iOS API を使用してユーザーのプロフィール写真の大きなバージョンを取得したい場合は、次のように記述できます。

    [facebook requestWithGraphPath:@"me/picture" andParams:[NSMutableDictionary dictionaryWithObject:@"large" forKey:@"type"] andDelegate:self];

そして、このデリゲート メソッドで結果オブジェクトに画像データを取得します。

- (void)request:(FBRequest*)request didLoad:(id)result
于 2012-06-04T15:12:56.337 に答える