Comment fermer la fenêtre de connexion contextuelle de Facebook après la connexion de l'utilisateur?

StackOverflow https://stackoverflow.com/questions/1610326

  •  05-07-2019
  •  | 
  •  

Question

Ci-dessous, mon code. Pour une raison quelconque, une fois que l'utilisateur s'est connecté à la petite fenêtre contextuelle, celle-ci sera redirigée vers '/ ". avec beaucoup de session JSON indésirable à la fin de l'URL.

Comment puis-je faire en sorte que la petite fenêtre se ferme et que ma fenêtre parent soit actualisée?

<script src="http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php/en_US" type="text/javascript"></script>

<fb:login-button v="2" onlogin='window.location("/test");' size="medium">Connect</fb:login-button>
<script type="text/javascript">FB.init("XXXXX",'/xd_receiver.htm');</script>
Était-ce utile?

La solution 6

Je le résous. Cela concernait mes paramètres dans la page FAcebook.

Autres conseils

Je viens de résoudre un problème similaire, lorsque vous vous connectez à l'aide de la fenêtre contextuelle de connexion à Facebook et que celle-ci se ferme, la page ne s'est pas actualisée.

Mon application Facebook n'a pas été correctement configurée. Il suffit d'aller dans les paramètres de votre application sur Facebook et de spécifier l'URL du site correcte (dans la section Site Web). Si vous le testez localement, vous pouvez ajouter http: // localhost /

.

J'espère que ça aide!

Rechargement de page

Essayez de définir l'indicateur reloadIfSessionStateChanged pour FB.init . Par exemple,

FB.init(  "myAPIkey", 
          "path/to/xd_receiver.htm",
          {"reloadIfSessionStateChanged": true}
       );

À partir de l'API Facebook

  

reloadIfSessionStateChanged

     

bool - Si la valeur est true, Facebook   surveillera les changements dans l'état de la session   et rechargez la page en cours si le   changements d'état de session. Cette option est   pratique pour une mise en œuvre qui   doit recharger la page chaque fois   changement d'état de session afin de   générer un contenu différent à partir du serveur   côté.

Pour plus d'informations, consultez http: // développeurs .facebook.com / docs /? u = facebook.jslib.FB.Facebook.init

La fenêtre contextuelle n'est pas fermée

J'ai constaté que votre fenêtre contextuelle pouvait ne pas fermer si votre chemin / vers / xd_receiver.html était incorrect ou si votre fonction onlogin pour votre bouton de connexion n’est pas défini, veillez donc à les vérifier deux fois.

J'espère que ça aide!

Vous pouvez utiliser l'attribut onlogin de cette façon:

onlogin="document.location.href=document.location.href;"

Ceci sera exécuté par l'ouvreur (rafraîchissement de la page).
Si vous supprimez l'attribut onlogin, la fenêtre contextuelle se ferme également, mais la page ci-dessous ne s'actualise pas.

J'ai écrit un tutoriel sur l'intégration d'une communauté à Facebook Connect, vous pouvez le lire ici .

Il semble que votre code comporte un "h" aléatoire. Cela pourrait-il être gênant avec la fonctionnalité JS?

FB.init("XXXXX",'/xd_receiver.htm'h);
                                  ^

Ma fenêtre contextuelle ne se fermait pas (lors de la publication dans un flux) car je n'avais pas le fichier channel.html au bon endroit. Après la publication, le message est redirigé vers le fichier channel.html afin (en partie) de fermer la fenêtre contextuelle. Ne pas l'avoir au bon endroit signifiait donc qu'elle ne se fermait pas.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top