Come chiudere la finestra di login pop-up di Facebook dopo che l'utente si connette?
-
05-07-2019 - |
Domanda
Di seguito è riportato il mio codice. Per qualche motivo, dopo che l'utente accede alla piccola finestra pop-up, la piccola finestra verrà reindirizzata a "/ " con molta spazzatura JSON di sessione alla fine dell'URL.
Come posso fare in modo che la piccola finestra si chiuda e la finestra del mio genitore si aggiorni?
<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>
Soluzione 6
Lo risolvo. Ha a che fare con le mie impostazioni nella pagina FAcebook.
Altri suggerimenti
Ho appena risolto un problema simile, che quando accedi con la finestra popup di accesso di Facebook e si chiude, la pagina non si aggiorna.
La mia APP di Facebook non è stata configurata correttamente. Basta andare alle impostazioni dell'applicazione in Facebook e specificare l'URL del sito corretto (nella sezione Sito Web). Se lo stai testando localmente puoi mettere http: // localhost /
Spero che questo aiuti!
Ricarica pagina
Prova a impostare il flag reloadIfSessionStateChanged
per FB.init
. Ad esempio,
FB.init( "myAPIkey",
"path/to/xd_receiver.htm",
{"reloadIfSessionStateChanged": true}
);
Dall'API di Facebook
reloadIfSessionStateChanged
bool - Se il valore è vero, Facebook monitorerà i cambiamenti nello stato della sessione e ricaricare la pagina corrente se il lo stato della sessione cambia. Questa opzione è conveniente per un'implementazione che deve ricaricare la pagina ogni volta modifica dello stato della sessione per generare contenuti diversi dal server lato.
Per ulteriori informazioni, consulta http: // developers .facebook.com / docs /? u = facebook.jslib.FB.Facebook.init
Popup non chiuso
Ho scoperto che potresti avere problemi con la finestra popup che non si chiude se il tuo path / to / xd_receiver.html
non è corretto o se la tua funzione onlogin
per il tuo pulsante Connetti non è definito, quindi assicurati di ricontrollarli.
Spero che ti aiuti!
È possibile utilizzare l'attributo onlogin in questo modo:
onlogin="document.location.href=document.location.href;"
Questo verrà eseguito dall'apri (aggiorna la pagina).
Se rimuovi l'attributo onlogin, anche il pop-up si chiuderà, ma la pagina seguente non si aggiorna.
Ho scritto un tutorial sull'integrazione di una comunità con Facebook Connect, puoi leggerlo qui .
Sembra che tu abbia una 'h' casuale nel tuo codice. Potrebbe essere un problema con la funzionalità JS?
FB.init("XXXXX",'/xd_receiver.htm'h);
^
Il mio popup non si chiudeva (quando pubblicavo su un feed) perché non avevo il file channel.html nel posto giusto. Dopo aver fatto il post, reindirizza al file channel.html per chiudere (parzialmente) il popup - quindi non averlo nel posto giusto significa che non si è chiuso.