FB.getLoginStatus retourne l'état inconnu
Lors de l'appel de FB.getLoginStatus à l'aide d'un valide Facebook App le statut de la réponse est toujours inconnu. Réponse exacte est {authResponse: undefined, statut: "inconnu"}.
<html>
<body>
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function(){
FB.init({ appId:'1484134468466778', status:true, cookie:true, xfbml:true});
FB.getLoginStatus(function(response){
console.log(response);
});
};
(function(d){
var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;}
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "//connect.facebook.net/en_US/all.js";
d.getElementsByTagName('head')[0].appendChild(js);
}(document));
</script>
</body>
</html>
Exemple d'URL:
http://media.tuentifotos.com/simple_test.html
Ici une capture d'écran de l'Facebook Paramètres de l'Application.
Tout d'abord, vous ne devez pas partager votre id d'Application. Vous obtenez de réponse inconnu puisque vous n'êtes pas connecté ni authentifié à l'application. Vous devez vous connecter en utilisant facebook bouton et ensuite, il affichera la réponse appropriée. Espérons que cela aide!
La documentation sur la getLoginStatus expliquer qu'il doit retourner not_authorized si l'utilisateur est connecté à Facebook, mais ne s'est pas authentifié l'application.
La documentation sur la getLoginStatus expliquer qu'il doit retourner not_authorized si l'utilisateur est connecté à Facebook, mais ne s'est pas authentifié l'application.
OriginalL'auteur Diego Cerdan Puyol | 2014-04-06
Vous devez vous connecter pour publier un commentaire.
Ce qui se passait pour moi dans Chrome, et a été parce que Chrome a été configuré pour bloquer les cookies tiers et les données.
Une fois que j'ai fait cette modification de configuration, FaceBook est capable de me connecter dans mon application sans problème.
Je l'ai décoché, mais je suis toujours le même problème
Comment savez-vous, l'utilisateur final de votre code ne sera pas le même problème? Allez-vous vous informer que toute personne qui utilise votre application de décocher cette case?
Il n'a pas vraiment donner suffisamment d'informations pour vous de savoir si cela va être un problème pour ses utilisateurs finaux, ou même si il va y en avoir. Cela n'a régler mon problème, cependant, qui a été entièrement non-utilisateur final-y.
OriginalL'auteur Flimzy
Lorsque j'ai vérifié, le statut de montre
"not_authorized"
et c'est très bien, puisque je n'ai pas autorisé l'application encore.Pour réaliser le flux, vous devez ajouter le
FB.login
chaque id utilisateur n'est pas autorisé ou n'est pas connecté à facebook:Pour moi sa en disant: "not_authorized"
Je pense que cela va déclencher une popup d'avertissement, parce que fbAsyncInit n'est pas appelé à partir d'un utilisateur ", cliquez sur" et FB.de connexion s'ouvre une popup sans interaction de l'utilisateur (j'.e cliquez sur)
cela ne semble pas un bon plan quand même - tout à coup éclater jusqu'à la fenêtre de connexion sans une action de l'utilisateur
OriginalL'auteur Sahil Mittal
Pour moi cela signifiait "sur ma page de connexion" j'avais besoin de spécifier les cookies.
Mais ne me demandez pas pourquoi cela a été le cas. Il a également fixé avoir besoin de cliquer deux fois sur le bouton de connexion à la réalité de connexion, et ne nécessite même pas d'un id d'application, apparemment, FWIW...
OriginalL'auteur rogerdpack
J'ai moi aussi été confronté à ce problème dans Chrome. Cependant, dans Firefox, il a travaillé comme prévu avec le statut retourné comme
connected
quand l'utilisateur a enregistré jusque-là.J'ai trouvé une idée à ce sujet d'une réponse à la question similaire ici.
La cause de ce problème est, sur
FB.logout()
, Chrome n'est pas en supprimant le cookiefblo_<your-app-id>
qui est en quelque sorte affecterFB.getLoginStatus()
fonction pour retournerunknown
Corrigé: Sur l'appel de
FB.logout()
, vous pouvez supprimer par programme le cookiefblo_<your-app-id>
fb
cookies, j'ai vu quefblo_xxxx
a été mis ày
. Après la suppression, j'ai été capable de rafraîchir la page et ai attenduconnected
état de ma connexion. J'avais fait appelFB.logout()
à partir de la console. Me demande vraiment pourquoi cela n'a pas été fixée. Semble très comportements indésirables.J'ai été confronté à un autre problème. Vous devez définir domaine correct lors de la suppression des cookies:
domain = new RegExp('fbm_' + fbAppId + '=.*base_domain=([^;\\s&]+)').exec(document.cookie); domain = domain[1] || ('.' + document.location.host);
OriginalL'auteur Nagesh Andani
J'ai eu le même problème sous IE. Flimzy réponse m'a fait réfléchir. J'ai essayé de courir IE en tant qu'administrateur et ça a fonctionné.
OriginalL'auteur Dennis Calla
J'ai eu le même problème, j'ai corrigé cela en désactivant toutes les cache et les cookies.
OriginalL'auteur divyanshu