Frage Facebook Graph API: Erhalten Sie größere Bilder in einer Anfrage


Ich benutze derzeit der Graph API Explorer um einige Tests zu machen. Das ist ein gutes Werkzeug.

Ich möchte die Freundesliste des Benutzers mit den Namen, IDs und Bildern von Freunden abrufen. Also tippe ich:

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

Aber Bild ist nur 50x50, und ich möchte eine größere in dieser Anfrage.

Ist es möglich ?


74
2018-05-18 10:14


Ursprung


Antworten:


Sie müssen das "Bild" -Attribut jedoch nicht ziehen. es gibt viel bequemere Weise, das einzige, was Sie brauchen, ist Benutzer-ID, siehe Beispiel unten;

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

p.s. type definiert die gewünschte Größe

Denken Sie daran, dass / me / friends mit token mit grundlegenden Berechtigungen die Liste der Freunde nur mit den Attributen id + name zurückgibt


57
2018-05-18 12:14



Wie beschrieben in dieser Fehler Auf Facebook können Sie jetzt auch spezifische Bildgrößen über die neue API anfordern "Feld Erweiterung" Syntax.

Wie so:

https://graph.facebook.com/____OBJECT_ID____?fields=picture.type(large)

172
2017-10-04 18:53



Der beste Weg, um alle Freunde (die die App natürlich auch benutzen) mit korrekten Bildgrößen zu bekommen, ist zu benutzen Feld Erweiterungentweder mit einem der Größen-Tags (quadratisch, klein, normal, groß):

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

(edit: das geht nicht mehr)

... oder Sie können die Breite / Höhe angeben:

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

Übrigens kannst du es auch so schreiben:

me?fields=friends{picture.type(large)}

66
2017-11-18 23:28



Ändern Sie das Array von Feldern id,name,picture zu id,name,picture.type(large)

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

Ergebnis:

{
   "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"
      }
   }
}

29
2017-11-18 06:32



Ich recherchierte Graph API Explorer ausführlich und fand schließlich full_picture

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

P.S. Ich habe festgestellt, dass full_picture nicht immer das gewünschte Bild in voller Größe liefert. 'Anhänge' tut es

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

20
2017-12-17 11:18



Sie können auch versuchen, das Bild zu erhalten, wenn Sie es basierend auf der Höhe oder Breite möchten

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

ODER

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

Die Werte sind standardmäßig in Pixeln angegeben, die Sie nur für den int-Wert angeben müssen


18
2017-10-30 12:04



Sie können die Größe des Bildes in Pixel wie folgt einstellen:

https://graph.facebook.com/v2.8/me?fields=id,name,picture.width(500).height(500)

In ähnlicher Weise type Parameter kann verwendet werden

{user-id}/?fields=name,picture.type(large)

Von dem Dokumentation

Art   enum {klein, normal, Album, groß, quadratisch}


14
2017-10-30 14:28



Hum ... Ich denke, ich habe eine Lösung gefunden.

In der Tat, kann nur anfordern

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

Gemäß http://developers.facebook.com/docs/reference/api/ (Abschnitt "Bilder"), die URL der Profilfotos kann mit der Benutzer-ID erstellt werden

Angenommen, die Benutzer-ID ist in $ 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"

Aber es ist nicht die endgültige Bild-URL, also wenn jemand eine bessere Lösung hat, würde ich mich freuen zu wissen :)


7
2018-05-18 12:14



Von v2.7, /<picture-id>?fields=images gibt Ihnen eine Liste mit unterschiedlicher Größe der Bilder, wobei das erste Element das Vollbild ist.

Ich kenne keine Lösung für mehrere Bilder gleichzeitig.


2
2018-01-25 15:39



In Bildern gefundene URL in den Graphantworten (die "http://photos-c.ak.fbcdn.net/"Einsen", ersetzen Sie einfach das Standard "_s.jpg" durch "_n.jpg" (? normale Größe) oder "_b.jpg" (? große Größe) oder "_t.jpg" (Miniaturansicht).

Hacakable URLs / REST API machen das Web besser.


1
2017-12-11 15:03



rest-fb Benutzer (quadratisches Bild, größere Auflösung): Verbindung myFriends = fbClient.fetchConnection ("me / friends", User.class, Parameter.with ("Felder", "public_profile, E-Mail, Vorname, Nachname, Geschlecht, Bild.Weit (100) .Height (100)")) ;


1
2017-08-04 11:51