2010-09-21 5 views

Répondre

2

Je suppose que vous utilisez Facebook Connect?

Si oui, il suffit de faire ce qui suit dans JavaScript:

FB.Connect.logout(); // old JS API 
FB.logout(); // new JS API 

http://developers.facebook.com/docs/reference/javascript/FB.logout http://developers.facebook.com/docs/reference/oldjavascript/FB.Connect.logout

+0

Je l'utilise mais il ne fonctionne pas dans n'importe quel navigateur sauf FF. – Seema

+0

quel SDK JavaScript utilisez-vous? Im en utilisant l'ancienne API JS et FB.Connect.logout() fonctionne pour moi dans TOUS les navigateurs. – RPM1984

+0

Nous pouvons utiliser ce lien. http://m.facebook.com/logout.php?confirm=1&next=http://example.com Vous pouvez corriger votre URL de retour et l'URL de déconnexion du site dans le paramètre suivant. – Seema

0

Vous allez être redirigé vers une autre page avec ou immédiatement après l'appel FB.logout?

J'ai trouvé que FF et Chrome vont exécuter l'appel FB.logout assez rapidement pour que cela fonctionne correctement, mais que IE et les navigateurs mobiles (en raison de la vitesse du réseau en plus des différences dans le moteur JavaScript) ne terminera pas l'appel avec succès avant que le navigateur ne charge la page vers laquelle vous redirigez.

Ainsi, la chose la plus sûre est de mettre tout en redirigent une fonction de rappel et de transmettre cela à FB.logout comme ceci:

function mysignout(url) 

{ 
    FB.logout(function() 
    { 
     top.location.href = 'url' 
    }); 
} 

je mettais directement à l'origine FB.logout en cas onclick d'une ancre lien et alors que cela a fonctionné dans FF et Chrome, il ne fonctionnait pas dans IE ou dans mon navigateur Android. Faire ce qui précède a fait fonctionner dans tous les environnements. De manière surprenante, il faut plus de 2 secondes pour que FB.logout réussisse complètement dans la plupart des environnements. Il y a évidemment une sorte d'appel ajax impliqué pour révoquer l'authentification sur le serveur, pas seulement pour détruire le cookie local.

Questions connexes