web-dev-qa-db-fra.com

Obtenir des données de profil d'utilisateur Facebook avec Javascript

Je dois obtenir un identifiant d'utilisateur Facebook, un sexe, une photo et d'autres données de profil avec Javascript.

Je me souviens qu'il existait une méthode pour obtenir un objet utilisateur avec .id, .gender, .photo mais je n'ai pas de copie de l'appel d'API et je ne trouve pas d'explication dans la documentation.

Comment obtenir l'UID et le sexe de l'utilisateur avec Javascript?

Merci

17
lisovaccaro

Mise à jour: j'ai ajouté un peu plus de détail à la réponse:

Tout d'abord, vous devez appeler FB.init et ajouter votre identifiant d'application:

FB.init(
{
    appId  : APP_ID,
    status : true, // check login status
    cookie : true, // enable cookies to allow the server to access the session
    xfbml  : true  // parse XFBML
});

Ensuite, vérifiez si une session est ouverte (l’utilisateur est connecté).

if(FB.getSession() != null) {

Et interroger les détails par:

    FB.api('/me', function(response) 
    {
        alert ("Welcome " + response.name + ": Your UID is " + response.id); 
    });
}

Vous devrez également ajouter <div id="fb-root"></div> au <body> de votre page et charger <script src="http://connect.facebook.net/en_US/all.js"></script>.

La photo de profil utilisateur est accessible en tant que http:/graph.facebook.com/USERID/picture/

Vérifiez la référence de l’API Graph ici: http://developers.facebook.com/docs/reference/api/user/

et le kit de développement logiciel FB référence ici: http://developers.facebook.com/docs/reference/javascript/

19
Aleadam

La fonction FB.getSession() utilisée dans la réponse acceptée à cette question en 2011 est maintenant (2012) obsolète et supprimée du kit de développement logiciel Facebook JS.

Vous pouvez toujours découvrir l'ID Facebook de l'utilisateur avec la méthode getLoginStatus() comme ceci:

FB.getLoginStatus(function(response) {
  if (response.status === 'connected') {
    alert ("Your UID is " + response.authResponse.userID);
  }
});

Remarque: vous devez toujours initialiser l'API Facebook et insérer l'élément fb-root dans votre code HTML, comme l'explique Aleadam dans la réponse acceptée.

21
user327961

Dans le paramètre d'autorisation } de votre application, assurez-vous que le paramètre Auth Token est configuré en tant que Fragment d'URI.

Le processus de connexion utilisant javascript _ est expliqué dans la documentation de facebook : Connexion avec Facebook .

Suivez les trois étapes, le code source est déjà écrit.

0
EazyHot