90

現在、Graph API Explorerを使用していくつかのテストを行っています。それは良いツールです。

友達の名前、ID、写真を含むユーザーの友達リストを取得したい。だから私はタイプします:

https://graph.facebook.com/me/friends?fields=id,picture,name

しかし、画像は 50x50 しかないので、このリクエストではより大きな画像を希望します。

出来ますか ?

4

20 に答える 20

208

Facebook のこのバグで説明されているように、新しい API の「フィールド拡張」構文を使用して、特定の画像サイズをリクエストすることもできます。

そのようです:

https://graph.facebook.com/____OBJECT_ID____?fields=picture.type(large)
于 2012-10-04T18:53:03.857 に答える
82

すべての友達 (もちろんアプリも使用しています) に正しい画像サイズを取得する最善の方法は、サイズ タグ (正方形、小、標準、大) のいずれかを使用してフィールド拡張を使用することです。

/me/friends?fields=picture.type(large)

(編集:これはもう機能しません)

...または、幅/高さを指定できます:

me/friends?fields=picture.width(100).height(100)

ところで、次のように書くこともできます。

me?fields=friends{picture.type(large)}
于 2014-11-18T23:28:05.357 に答える
67

ただし、「画像」属性をプルする必要はありません。もっと便利な方法があります。必要なのはユーザー ID だけです。以下の例を参照してください。

https://graph.facebook.com/user_id/picture?type=large

ps タイプは、必要なサイズを定義します

基本的なパーミッションでトークンを使用すると、/me/friends は id+name 属性を持つフレンドのリストのみを返すことに注意してください。

于 2012-05-18T12:14:01.563 に答える
34

フィールドの配列を次のように変更しid,name,pictureますid,name,picture.type(large)

https://graph.facebook.com/v2.8/me?fields=id,name,picture.type(large)&access_token=<the_token>

結果:

{
   "id": "130716224073524",
   "name": "Julian Mann",
   "picture": {
      "data": {
         "is_silhouette": false,
         "url": "https://scontent.xx.fbcdn.net/v/t1.0-1/p200x200/15032818_133926070419206_3681208703790460208_n.jpg?oh=a288898d87420cdc7ed8db5602bbb520&oe=58CB5D16"
      }
   }
}
于 2016-11-18T06:32:27.140 に答える
20

Graph API Explorer を広範囲に調査し、最終的に full_picture を見つけました

https://graph.facebook.com/v2.2/$id/posts?fields=picture,full_picture

PS full_picture が常に必要なフルサイズの画像を提供するとは限らないことに気付きました。「添付ファイル」は

https://graph.facebook.com/v2.2/$id/posts?fields=picture,full_picture,attachments
于 2014-12-17T11:18:45.870 に答える
20

高さまたは幅に基づいて画像が必要な場合は、画像を取得することもできます

https://graph.facebook.com/user_id/picture?height=

また

https://graph.facebook.com/user_id/picture?width=

値はデフォルトでピクセル単位であり、int 値を指定するだけで済みます

于 2012-10-30T12:04:57.843 に答える
9

うーん...解決策を見つけたと思います。

実際には、単にリクエストすることができます

https://graph.facebook.com/me/friends?fields=id,name

http://developers.facebook.com/docs/reference/api/ (セクション「写真」) によると、プロファイルの写真の URL はユーザー ID で作成できます。

たとえば、ユーザー ID が $id にあるとします。

"http://graph.facebook.com/$id/picture?type=square"
"http://graph.facebook.com/$id/picture?type=small"
"http://graph.facebook.com/$id/picture?type=normal"
"http://graph.facebook.com/$id/picture?type=large"

しかし、それは最終的な画像の URL ではないため、誰かがより良い解決策を持っている場合は、喜んでお知らせします :)

于 2012-05-18T12:14:30.520 に答える
2

でリクエストを行ったときに、このエラーが発生しましたpicture.type(full_picture)

"(#100) フィールド 'picture' の場合: type は次のいずれかの値でなければなりません: small、normal、album、large、square"

と でリクエストを行うpicture.type(album)picture.type(square)、50x50 ピクセル サイズの画像が返されます。

でリクエストするとpicture.type(large)、 は 200x200 ピクセル サイズの画像を返します。

でリクエストするとpicture.width(800)、477x477 ピクセル サイズの画像が返されます。

picture.width(250)応答 320x320。

picture.width(50)応答 50x50。

picture.width(100)応答 100x100。

picture.width(150)応答 160x160。

ユーザーが最初にその写真を追加したときに、facebook はさまざまなサイズの画像を提供すると思います。

ここに表示されているユーザー画像をリクエストするための API は、リクエストされた画像のサイズ変更をサポートしていません。画像の最も近いサイズが得られると思います。

于 2019-03-23T15:27:15.863 に答える
1

In pictures URL found in the Graph responses (the "http://photos-c.ak.fbcdn.net/" ones), just replace the default "_s.jpg" by "_n.jpg" (? normal size) or "_b.jpg" (? big size) or "_t.jpg" (thumbnail).

Hacakable URLs/REST API make the Web better.

于 2013-12-11T15:03:58.067 に答える
1

rest-fb ユーザー (正方形の画像、大きな解像度): Connection myFriends = fbClient.fetchConnection("me/friends", User.class, Parameter.with("fields", "public_profile,email,first_name,last_name,gender,picture .width(100).height(100)"));

于 2017-08-04T11:51:00.603 に答える
0

今のところ、友達の大きな写真を取得する唯一の方法は、FQL を使用することだと思います。まず、友達のリストを取得する必要があります。

https://graph.facebook.com/me/friends

次に、このリストを解析して、すべての友達を抽出しますids。それができたら、次の FQL クエリを実行するだけです。

SELECT id, url FROM profile_pic WHERE id IN (id1, id2) AND width=200 AND height=200

200これは単なる例示的なサイズであり、任意のサイズを入力できます。次の応答が返されます。

{
  "data": [
    {
      "id": ..., 
      "url": "https://fbcdn-profile-a.akamaihd.net/..."
    }, 
    {
      "id": ..., 
      "url": "https://fbcdn-profile-a.akamaihd.net/..."
    }
  ]
}

各 URL は 200x200px の画像へのリンクです。

于 2013-04-16T13:20:16.137 に答える
0

私は同じ問題を抱えていますが、私の問題を解決するためにこれを試しました。大きな画像を返します。これは完璧な修正ではありませんが、これを試すことができます。

https://graph.facebook.com/v2.0/OBJECT_ID/picture?access_token=XXXXX

于 2014-07-15T07:09:14.087 に答える
0

次のように、各 json オブジェクトの URL からピクセル サイズを変更して、画像のサイズを変更してみてください。

たとえば、s480x480をs720x720に変更します。

前: https ://fbcdn-sphotos-ca.akamaihd.net/hphotos-ak-xfp1/t1.0-9/q71/s480x480/10454308_773207849398282_283493808478577207_n.jpg

変更後: https://fbcdn-sphotos-ca.akamaihd.net/hphotos-ak-xfp1/t1.0-9/q71/s720x720/10454308_773207849398282_283493808478577207_n.jpg

于 2014-07-28T21:28:30.177 に答える
0

JS スタイルのバリアント。非常に大きな画像幅を設定するだけで、最大のバリアントが得られます。

FB.api(
  '/' + userId,
  {fields: 'picture.width(2048)'},
  function (response) {
    if (response && !response.error) {
      console.log(response.picture.data.url);
    }
  }
);
于 2016-11-30T09:08:56.637 に答える