Como fechar a janela de login pop-up do Facebook depois que o usuário se conectar?
-
05-07-2019 - |
Pergunta
Abaixo está o meu código. Por algum motivo, depois que o usuário faz login na pequena janela pop-up, a pequena janela será redirecionada de volta para '/"com muito lixo JSON da sessão no final do URL.
Como faço para que a pequena janela seja fechada e a janela dos meus pais atualize?
<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>
Solução 6
Eu resolvi isso. Tinha a ver com minhas configurações na página do Facebook.
Outras dicas
Acabei de resolver um problema semelhante, que quando você faz o login com a janela pop -up de login do Facebook e ele fecha, a página não atualizou.
Meu aplicativo do Facebook não foi configurado corretamente. Basta acessar as configurações do seu aplicativo no Facebook e especificar o URL do site correto (na seção Site). Se você estiver testando localmente, você pode colocar http: // localhost/
Espero que isto ajude!
Recarregamento da página
Tente definir o reloadIfSessionStateChanged
bandeira para FB.init
. Por exemplo,
FB.init( "myAPIkey",
"path/to/xd_receiver.htm",
{"reloadIfSessionStateChanged": true}
);
Da API do Facebook
ReloadifSessionStatechanged
BOOL - Se o valor for verdadeiro, o Facebook monitorará as alterações no estado da sessão e recarregará a página atual se o estado da sessão mudar. Esta opção é conveniente para uma implementação que precisa recarregar a página sempre que a mudança do estado da sessão para gerar conteúdo diferente do lado do servidor.
Para mais informações, confira http://developers.facebook.com/docs/?u=facebook.jslib.fb.facebook.init
Pop -up não fechando
Descobri que você pode ter problemas com sua janela pop -up não fechando se o seu path/to/xd_receiver.html
está incorreto ou se o seu onlogin
A função para o botão Connect é indefinida, portanto, verifique -os novamente.
Espero que ajude!
Você pode usar o atributo Onlogin desta maneira:
onlogin="document.location.href=document.location.href;"
Isso será executado pelo abridor (atualizando a página).
Se você remover o atributo onlogin, o pop -up também fechará, mas a página abaixo não atualizará.
Eu escrevi um tutorial sobre a integração de uma comunidade com o Facebook Connect, você pode ler aqui.
Parece que você tem um 'h' aleatório no seu código. Isso poderia estar mexendo com a funcionalidade JS?
FB.init("XXXXX",'/xd_receiver.htm'h);
^
Meu pop -up não estava fechando (ao postar em um feed) porque eu não tinha o arquivo canal.html no lugar certo. Depois de fazer a postagem, ele redireciona para o arquivo canal.html em ordem (em parte) para fechar o pop -up - portanto, não tê -lo no lugar certo significava que não fechou.