Je travaille sur une application Facebook Connect. J'ai le bouton Connect opérationnel et les utilisateurs peuvent s'authentifier avec succès via Facebook. Cependant, j'ai de la difficulté à afficher leur photo de profil et leur nom avec XFBML. Voici ce que je fais:L'API Facebook Connect ne remplit pas les données utilisateur lorsque l'option facebook-logo = "true" est utilisée
<script type="text/javascript">
function fb_login_handler() {
var userbox = document.getElementById("fb_userbox");
userbox.innerHTML =
"<span>"
+ "<fb:profile-pic uid=loggedinuser facebook-logo='true'></fb:profile-pic>"
+ "Welcome, <fb:name uid=loggedinuser useyou='false'></fb:name>"
+ "</span>";
FB.XFBML.Host.parseDomTree();
}
</script>
...
<div id="fb_userbox">
<fb:login-button onlogin="fb_login_handler();" autologoutlink="1" length="long"></fb:login-button>
</div>
...
<!-- Facebook Connect initialization -->
<script src="http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php/en_US" type="text/javascript">
</script>
<script type="text/javascript">
FB.init("[MY_API_KEY]", "/xd_receiver.htm",
{ "ifUserConnected" : fb_login_handler });
</script>
Je peux vous connecter avec succès avec le bouton Connect et la fonction de rappel Javascript se fasse automatiquement, mais je finis juste avec ceci:
http://www.friedo.com/fbuserbox.png
Ainsi, ni l'image ni le nom ne sont remplis. La même chose se produit même si je code en dur mon ID de profil FB à la place de loggedinuser
.
Mise à jour: Il semble (après déconner au hasard autour) que je peux le faire fonctionner si j'éteins l'attribut facebook-logo
de la balise fb:profile-pic
. Le définir sur false (ou le supprimer) provoque le rendu correct de la boîte utilisateur. Mais j'ai aussi besoin du logo Facebook pour travailler. :(
Avez-vous essayé de voir si cela est spécifique au navigateur? –
C'est un bon point, je ne l'ai pas encore essayé dans d'autres navigateurs. – friedo