簡體   English   中英

登錄本身后,Facebook登錄功能不執行任何操作

[英]Facebook login function doesn't executes anything after the login itself

在下面的代碼中,我嘗試在登錄后執行ajax並重定向,完全奇怪的是,它使我登錄,但是忽略了FB.login之后的FB.login內容!

我也在另一個站點中使用了這個確切的代碼,並且與ajax和重定向一起正常工作。

對Facebook api的調用是異步的,不包含在此處(它可以正常工作)

$(".joiner").live("click", login);
var button = document.getElementById('fb-login');

window.fbAsyncInit = function() {
    FB.init({appId: '0000000000000000', status: true});
    FB.getLoginStatus(function(response) {
        if (response.session) {
            console.log('User is logged in.');
            FB.api("/me", handleMe);
        }
        else {
            console.log('User is not logged in.');
            }
    });
};



function login(){
    FB.login(function(response) {
        if (response.session) {
            console.log('Login success.');
            FB.api("/me", handleMe);
        }
        else {console.log('Login cancelled.')}
    });
}



function handleMe(response) {

    $.ajax({
        type: 'GET',
        url: 'www.url.com',
        data: "uid=" + response.id + "&name=" + response.name + "&gender=" + response.gender,
        success: function(){
            console.log('Ajax successful.');
            window.location = "www.url.com";
            },
        error: function(){console.log('Ajax failed.');}
    });
}

我前一段時間有這個問題。 我可以通過在facebook應用程序配置中設置正確的網址並從該網址運行腳本來解決此問題。 當您嘗試通過例如應用程序配置中的url URL設置不同的本地主機進行登錄時,它不起作用。

有一個顯示錯誤代碼的響應,但不顯示response.session。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM