Je travaille maintenant sur une application Web qui est principalement basée sur Facebook Graph api . Je conserve quelques données sur les utilisateurs - en fait, les données publiques possibles disponibles - telles que le nom et l'ID .. La photo de profil fait partie des données publiques, et je me suis demandé comment je pourrais obtenir un lien direct vers la photo de profil d’un utilisateur en utilisant uniquement son identifiant.
Merci d'avance
http://graph.facebook.com/ "+ facebookId +" /picture?type=squarePar exemple: http://graph.facebook.com/67563683055/picture? type = carré
Il y a aussi plus de tailles en plus du "carré". Voir les docs .
Vous pouvez utiliser les URL suivantes pour obtenir différentes tailles d’images de profil .Veuillez vous assurer d’ajouter un identifiant Facebook à l’URL.
Photo de grande taillehttps://graph.facebook.com/ / facebookId}/picture? Type = large
Photo de taille moyennehttps://graph.facebook.com/ / facebookId}/picture? Type = normal
Photo de petite taillehttps://graph.facebook.com/ / facebookId}/picture? Type = small
Photo carréehttps://graph.facebook.com/ / facebookId}/picture? Type = square
Pour obtenir la plus grande taille de l'image
https://graph.facebook.com/{userID}?fields=picture.width(720).height(720)
ou tout ce dont vous avez besoin comme taille. D'après l'expérience, le type = large n'est pas le résultat le plus important que vous puissiez obtenir.
Ce sera un lien utile:
http://graph.facebook.com/893914824028397/picture?type=large&redirect=true&width=500&height=500
Vous pouvez définir la hauteur et la largeur selon vos besoins
893914824028397 est facebookid
Ceci est littéralement sur la page de couverture de la documentation de Graph API .
/OBJECT_ID/picture
renvoie une redirection vers l'image de l'objet (dans ce cas, les utilisateurs)/OBJECT_ID/?fields=picture
renvoie l'URL de l'imageExemples:
<img src="https://graph.facebook.com/4/picture"/>
utilise une redirection HTTP 301 vers la photo de profil de Zuck
https://graph.facebook.com/4?fields=picture
renvoie l'URL elle-même
Ici, cette api vous permet d’obtenir facilement fb, google, photos de profil Twitter https://www.avatars.io/
Utilisez url comme suit: https: //graph.facebook.com/ user_id / picture? Type = square dans le src de la balise img . Type peut être petit, grand.
vous pouvez l'obtenir en utilisant cette URL: vous obtiendrez la photo HD
https://graph.facebook.com/{userID}?fields=picture.width(720).height(720)&redirect=false
n'oubliez pas redirect = false ou cela retournera une erreur
Vous pouvez utiliser AngularJs à cet effet. Sa fonctionnalité de liaison de données à deux voies permettra d’obtenir une solution avec un minimum d’effort et moins de code.
<div>
<input type="text" name="" ng-model="fbid"><br/>
<img src="https://graph.facebook.com/{{fbid}}/picture?type=normal">
</div>
J'espère que cela répond à votre requête. Remarque: vous pouvez également utiliser une autre bibliothèque.
Conformément à la dernière version 3.2 de l’API Facebook, cette méthode générique permet aux utilisateurs d’obtenir une photo de profil est https://graph.facebook.com/v3.2/{user-id}/picture?type=square. vous pouvez visiter la documentation pour la photo de l’utilisateur ici . Les valeurs possibles pour le paramètre de type dans l’URL peuvent être petit, normal, album, grand, carré
Pour les groupes et pages , la photo de profil n'est pas disponible directement. Vous devez les obtenir en utilisant un jeton d'accès. Pour les groupes, vous devez utiliser le jeton d'accès utilisateur et pour les pages, vous pouvez utiliser à la fois le jeton d'accès utilisateur et le jeton d'accès aux pages.
Vous pouvez obtenir une image de profil d'un groupe ou d'une page à l'aide de l'URL générique: https://graph.facebook.com/v3.2/{user-id}/picture?access_token={access-tokenBuch&type=square
J'espère que cela sera utile aux personnes à la recherche d'une photo de profil de page ou de groupe.
Suivez simplement comme ci-dessous URL
https://graph.facebook.com/facebook_user_id/picture?type=square
type peut être normal, petit, moyen, grand. Ou carré (si vous voulez obtenir une image carrée, la taille carrée est limitée à 50x50).
Grâce au Javascript SDK (v2.12 - avril 2017) vous pouvez obtenir les détails de la demande d'image de cette façon:
FB.api("/" + uid + "/picture?redirect=0", function (response) {
console.log(response);
// prints the following:
//data: {
// height: 50
// is_silhouette: false
// url: "https://lookaside.facebook.com/platform/profilepic/?asid=…&height=50&width=50&ext=…&hash…"
// width: 50
//}
if (response && !response.error) {
// change the src attribute of img elements
[...document.getElementsByClassName('fb-user-img')].forEach(
i => i.src = response.data.url
);
// OR redirect to the URL above
location.assign(response.data.url);
}
});
Pour obtenir la réponse JSON, le paramètre redirect
avec 0 (zéro) en tant que valeur est important car la demande redirige vers l'image par défaut. Vous pouvez toujours ajouter d'autres paramètres dans la même URL. Exemples:
"/" + uid + "/picture?redirect=0&width=100&height=100"
: une image 100x100 sera retournée;"/" + uid + "/picture?redirect=0&type=large"
: une image 200x200 est renvoyée. Les autres types possibles incluent: petit, normal, album et carré.