J'utilise actuellement l'Explorateur d'API Graph pour faire des tests. C'est un bon outil.
Je veux obtenir la liste d'amis de l'utilisateur, avec les noms, identifiants et photos des amis. Alors je tape:
https://graph.facebook.com/me/friends?fields=id,picture,name
Mais l'image est seulement 50x50, et j'aimerais une plus grande dans cette demande.
C'est possible ?
facebook
facebook-graph-api
Martin
la source
la source
Comme décrit dans ce bogue sur Facebook, vous pouvez également demander des tailles d'image spécifiques maintenant via la nouvelle syntaxe «d' extension de champ » de l'API .
Ainsi:
la source
La meilleure façon d'obtenir tous les amis (qui utilisent également l'application, bien sûr) avec des tailles d'image correctes est d'utiliser l' extension de champ , soit avec l'une des balises de taille (carré, petit, normal, grand):
(modifier: cela ne fonctionne plus)
... ou vous pouvez spécifier la largeur / hauteur:
Btw, vous pouvez aussi l'écrire comme ceci:
la source
Remplacez le tableau de champs
id,name,picture
parid,name,picture.type(large)
Résultat:
la source
Graph returned an error: (#100) For field 'picture': type must be one of the following values: thumbnail, small, album
Vous pouvez définir la taille de l'image en pixels, comme ceci:
De la même manière, le
type
paramètre peut être utiliséDe la documentation
la source
Vous pouvez également essayer d'obtenir l'image si vous le souhaitez en fonction de la hauteur ou de la largeur
https://graph.facebook.com/user_id/picture?height=
OU
https://graph.facebook.com/user_id/picture?width=
Les valeurs sont par défaut en pixels, il vous suffit de fournir la valeur int
la source
J'ai fait des recherches approfondies sur Graph API Explorer et j'ai finalement trouvé full_picture
PS J'ai remarqué que full_picture ne fournira pas toujours l'image pleine taille que je veux. 'attachments' fait
la source
Hum ... je pense avoir trouvé une solution.
En fait, en peut simplement demander
Selon http://developers.facebook.com/docs/reference/api/ (section "Images"), l'url des photos du profil peut être construite avec l'ID utilisateur
Par exemple, en supposant que l'ID utilisateur est dans $ id:
Mais ce n'est pas l'URL de l'image finale, donc si quelqu'un a une meilleure solution, je serais heureux de savoir :)
la source
Vous pouvez spécifier
width
&height
dans votre demande à l'API graphique Facebook:http://graph.facebook.com/user_id/picture?width=500&height=500
la source
De
v2.7
,/<picture-id>?fields=images
vous donnera une liste avec différentes tailles d'images, le premier élément étant l'image en taille réelle.Je ne connais aucune solution pour plusieurs images à la fois.
la source
Dans les images URL trouvée dans les réponses Graph (le " http://photos-c.ak.fbcdn.net/ "), remplacez simplement la valeur par défaut "_s.jpg" par "_n.jpg" (? Taille normale) ou "_b.jpg" (? grande taille) ou "_t.jpg" (miniature).
Les URL Hacakables / API REST améliorent le Web.
la source
Utilisateurs rest-fb (image carrée, plus grande résolution): Connexion myFriends = fbClient.fetchConnection ("moi / amis", User.class, Parameter.with ("fields", "public_profile, email, first_name, last_name, gender, picture .largeur (100) .hauteur (100) "));
la source
J'ai eu cette erreur lorsque j'ai fait une demande avec
picture.type(full_picture)
:Quand je fais la demande avec
picture.type(album)
etpicture.type(square)
, me répond avec une taille d'image de 50x50 pixels.Lorsque je fais la demande avec
picture.type(large)
, me répond avec une taille d'image de 200x200 pixels.Lorsque je fais la demande avec
picture.width(800)
, me répond avec une taille d'image de 477x477 pixels.avec
picture.width(250)
, réponses 320x320.avec
picture.width(50)
, réponses 50x50.avec
picture.width(100)
, réponses 100x100.avec
picture.width(150)
, réponses 160x160.Je pense que Facebook donne les images qui ont été redimensionnées différemment lorsque l'utilisateur ajoute cette photo pour la première fois.
la source
Je pense qu'à partir de maintenant, la seule façon d'obtenir de grandes photos d'amis est d'utiliser FQL. Tout d'abord, vous devez récupérer une liste d'amis:
https://graph.facebook.com/me/friends
Ensuite, analysez cette liste et extrayez tous les amis
ids
. Lorsque vous avez cela, exécutez simplement la requête FQL suivante:200
voici juste une taille exemplaire, vous pouvez entrer n'importe quoi. Vous devriez obtenir la réponse suivante:Chaque URL étant le lien vers une image 200x200px.
la source
J'ai le même problème mais j'ai essayé celui-ci pour résoudre mon problème. il renvoie une grande image. Ce n'est pas la solution parfaite, mais vous pouvez essayer celle-ci.
https://graph.facebook.com/v2.0/OBJECT_ID/picture?access_token=XXXXX
la source
essayez de changer la taille de l'image en changeant la taille de pixel de l'url dans chaque objet json comme suit:
par exemple, je change s480x480 en s720x720
Avant: https://fbcdn-sphotos-ca.akamaihd.net/hphotos-ak-xfp1/t1.0-9/q71/s480x480/10454308_773207849398282_283493808478577207_n.jpg
Après: https://fbcdn-sphotos-ca.akamaihd.net/hphotos-ak-xfp1/t1.0-9/q71/s720x720/10454308_773207849398282_283493808478577207_n.jpg
la source
Variante de style JS. Il suffit de définir une très grande largeur d'image et vous obtiendrez la plus grande variante.
la source
Vous pouvez utiliser full_picture au lieu de la clé image pour obtenir une image en taille réelle.
la source