Comment extraire l'image de profil de Facebook javascript SDK?

J'essaie d'extraire une image de profil de Facebook. En ce moment, je reçois toutes les informations de Facebook mais je ne peux pas avoir une image de profil de l'utilisateur. Voici mon code:

function getFBData () { FB.api('/me', function(response) { fbinfo = new Array(); fbinfo[0] = response.id; fbinfo[1] = response.first_name; fbinfo[2] = response.last_name; fbinfo[3] = response.email; FB.api('/me/picture?type=normal', function (response) { var im = document.getElementById("profileImage").setAttribute("src", response.data.url); alert(im); }); 

Comment puis-je obtenir une image de la réponse de cette API?

Pourquoi n'utilisez-vous que l'identifiant que vous avez déjà récupéré et que vous affichez l'image directement? Pourquoi devez-vous faire un appel supplémentaire?

par exemple

 function getFBData () { FB.api('/me', function(response) { fbinfo = new Array(); fbinfo[0] = response.id; fbinfo[1] = response.first_name; fbinfo[2] = response.last_name; fbinfo[3] = response.email; var im = document.getElementById("profileImage").setAttribute("src", "http://graph.facebook.com/" + response.id + "/picture?type=normal"); }); } 

Par exemple http://graph.facebook.com/4/picture?type= redirections normales à l'image de Mark Zuck

Si vous rencontrez des problèmes, connectez-vous à l'URL afin de vous assurer que vous obtenez un identifiant valide et collez l'url dans un navigateur.

Essayez comme

 FB.api("/me", {fields: "id,name,picture"}, function(response) { FB.api( { method: 'fql.query', query: 'SELECT pid, src_big, src_big_height, src_big_width FROM photo WHERE aid IN ( SELECT aid FROM album WHERE owner="' + response.id + '" AND name = "Profile Pictures")' }, function(data1) { alert( data1[0].src_big ); } ); }); 

Cela vous donnera le lien de l'image et vous pouvez l'utiliser de manière appropriée

Une option supplémentaire

J'ai essayé cela et cela fonctionne avec succès. Essaye ça :

 FB.api('/me', { fields: 'id, name, email' }, function(response) { var userInfo = document.getElementById('user-info'); userInfo.innerHTML = '<img src="https://graph.facebook.com/' + response.id + '/picture">' + response.name ; }); 

J'espère que vous avez obtenu la réponse.

essaye ça:

 FB.api('/me/picture?type=normal', function(response) { var str="<img style='border: 3px solid #3a3a3a;' src='"+response.data.url+"'/>"; return str; });