Facebook API obtenir l'adresse de courriel
Je dois faire un site web pour vous connecter avec Facebook. Fait sens pour être en mesure de leur envoyer un email, mais je ne peux pas obtenir l'adresse e-mail de Facebook.
J'ai suivi exactement les instructions de https://developers.facebook.com/docs/facebook-login/getting-started-web/
- Je l'ajouter {champ d'application:e-mail} dans FB.connexion.
Comment puis-je obtenir l'adresse e-mail avec Facebook API?
Mon code maintenant:
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({
appId : 'app', //App ID
channelUrl : '//domain.COM/channel.php', //Channel File
status : true, //check login status
cookie : true, //enable cookies to allow the server to access the session
xfbml : true //parse XFBML
});
FB.Event.subscribe('auth.authResponseChange', function(response) {
if (response.status === 'connected') {
FB.api('/me', function(response) {
console.log(response);
});
} else if (response.status === 'not_authorized') {
FB.login(function(response) {},{scope: 'email'});
} else {
FB.login(function(response) {}, {scope: 'email'});
}
});
};
//Load the SDK asynchronously
(function(d){
var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
if (d.getElementById(id)) {return;}
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "//connect.facebook.net/en_US/all.js";
ref.parentNode.insertBefore(js, ref);
}(document));
</script>
<fb:login-button show-faces="true" width="200" max-rows="1"></fb:login-button>
Vous devez vous connecter pour publier un commentaire.
Je suis tombé sur le même problème. Supprimer l'autorisation de l'application à partir du compte fb. Ensuite autoriser à nouveau l'application par le biais de votre page de test
J'ai trouvé qu'il n'a pas frappé le bloc ci-dessous une fois que j'ai autorisé l'application la première fois. (ajout du champ d'application:e-mail dans FB.connexion une fois que l'application a été autorisé n'est pas bon... je pense)
espère que ça aide
Si vous êtes connecté avec succès, l'appel de
response.email
sera de retour l'adresse email de l'utilisateur.