Facebook Graph API : obtenir plus de photos dans une requête
Je suis actuellement à l'aide l'API Graphique de l'Explorateur pour faire quelques tests. C'est un bon outil.
Je veux obtenir de l'utilisateur de la liste d'amis, avec les noms de vos amis, les identifiants et les photos. J'ai donc du type :
https://graph.facebook.com/me/friends?fields=id,picture,name
Mais l'image n'est 50x50, et je voudrais un plus grand dans la présente demande.
Est-il possible ?
Vous devez vous connecter pour publier un commentaire.
vous n'avez pas besoin de tirer une "photographie" de l'attribut si. il est beaucoup plus pratique, la seule chose que vous avez besoin est un nom d'utilisateur, voir l'exemple ci-dessous;
https://graph.facebook.com/user_id/picture?type=large
p.s. type définit la taille que vous voulez
plz gardez à l'esprit que l'aide jeton avec les permissions de base, /me/amis seront de retour liste des amis qu'avec id+nom attributs
Comme décrit dans ce bug sur Facebook, vous pouvez également demander que les tailles d'image maintenant via la nouvelle API "l'extension des champs" syntaxe.
Comme suit:
La meilleure façon d'obtenir tous les amis (qui sont à l'aide de l'Application de trop, bien sûr) avec la bonne taille des images est d'utiliser l'extension des champs, soit auprès de l'un de la taille des balises (carré, petit, normal, grand):
(edit: cela ne fonctionne plus)
...ou vous pouvez spécifier la largeur/hauteur:
Btw, vous pouvez aussi l'écrire comme ceci:
Modifier le tableau des champs
id,name,picture
àid,name,picture.type(large)
Résultat:
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,
type
paramètre peut être utiliséDe la la documentation
J'ai fait des recherches API Graphique Explorer de manière approfondie et a finalement trouvé full_picture
P. S. j'ai remarqué que full_picture ne permet pas toujours de fournir la pleine taille de l'image que je veux. "annexes" ne
Vous pouvez également essayer d'obtenir de l'image si vous le souhaitez en fonction de la hauteur ou la largeur
https://graph.facebook.com/user_id/picture?height=
OU
https://graph.facebook.com/user_id/picture?width=
Les valeurs par défaut en pixels, vous avez juste besoin de fournir de la valeur int
Hum... je crois que j'ai trouvé une solution.
En fait, n'a qu'à demander
Selon http://developers.facebook.com/docs/reference/api/ (section "Photos"), l'url de profil de photos peut être construit avec l'id utilisateur
Par exemple, en supposant que l'utilisateur id est $id :
Mais ce n'est pas l'URL de l'image, donc si quelqu'un a une meilleure solution, je serais heureux de le savoir 🙂
De
v2.7
,/<picture-id>?fields=images
vous donnera une liste avec différentes taille des images, le premier élément étant la taille réelle de l'image.Je ne connais pas de solution pour plusieurs images à la fois.
Vous pouvez spécifier la largeur & hauteur de votre demande à Facebook api graphique:
http://graph.facebook.com/user_id/picture?width=500&heigth=500
En images URL dans le Graphique réponses (la "http://photos-c.ak.fbcdn.net/" ceux), il suffit de remplacer la valeur par défaut "_s.jpg" par "_n.jpg" (? taille normale) ou "_b.jpg" (? de grande taille) ou "_t.jpg" (vignette).
Hacakable Url/API REST de rendre le Web meilleur.
reste-fb utilisateurs (image carrée, plus grand res.):
Connexion myFriends = fbClient.fetchConnection("moi/amis", User.class de Paramètre.avec("champs", "public_profile,e-mail,prénom,nom,sexe,photo.largeur(100).hauteur(100)"));
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 avez besoin de récupérer une liste d'amis:
https://graph.facebook.com/me/friends
Ensuite d'analyser cette liste et d'en extraire tous les amis
ids
. Quand vous avez cela, exécutez simplement la suivante FQL requête:200
ici est juste un exemplaire de la taille, vous pouvez saisir quoi que ce soit. Vous devriez obtenir la réponse suivante:Avec chaque url à être le lien à un 200x200px image.
J'ai le même problème mais j'ai essayé celui à résoudre mon problème. il renvoie des images de grande taille.
Il n'est pas parfait fixer, mais vous pouvez essayer celui-ci.
https://graph.facebook.com/v2.0/OBJECT_ID/picture?access_token=XXXXX
essayer de changer la taille de l'image en changeant la taille de pixel à partir de l'url dans chaque objet json comme suit :
par exemple, j'ai changer s480x480 être s720x720
Avant :
https://fbcdn-sphotos-c-a.akamaihd.net/hphotos-ak-xfp1/t1.0-9/q71/s480x480/10454308_773207849398282_283493808478577207_n.jpg
Après :
https://fbcdn-sphotos-c-a.akamaihd.net/hphotos-ak-xfp1/t1.0-9/q71/s720x720/10454308_773207849398282_283493808478577207_n.jpg
JS style variante.
Définissez simplement énorme grande largeur de l'image et vous aurez le plus grand de la variante.
Vous pouvez utiliser full_picture au lieu d'image clé pour obtenir l'image en taille réelle.
J'ai eu cette erreur quand j'ai fait une demande avec
picture.type(full_picture)
:Quand je fais la demande avec
picture.type(album)
etpicture.type(square)
, les réponses moi avec une image 50x50 pixels taille.Quand je fais la demande avec
picture.type(large)
, les réponses moi avec une image de 200 x 200 pixels taille.Quand je fais la demande avec
picture.width(800)
, les réponses moi avec une image 477x477 la taille du pixel.avec
picture.width(250)
, les réponses 320x320.avec
picture.width(50)
, les réponses 50x50.avec
picture.width(100)
, les réponses 100x100.avec
picture.width(150)
, les réponses 160x160.Je pense que facebook donne les images redimensionnées diversement lorsque l'utilisateur d'ajouter une photo.