0

我在我的应用程序中添加了一个用于从 facebook 注销的示例按钮。但不幸的是,它似乎不像通常那样工作。我什至尝试实现一个简单的按钮来检查但是。但不幸的是,它似乎不起作用。任何帮助或建议将不胜感激。

这是我的注销代码:

        <input type="button" value="Logout" onclick="FB.Logout();">


       fbLogout(){ 
       if(typeof FB.logout == 'function')
       { if (FB.getAuthResponse())
       { FB.logout(function(response)
       { alert("you have logged out") });  
    return; } }; 

     alert("you have logged out"); 
     return; 
       }

我收到一个错误,因为“在没有访问令牌的情况下调用 FB.logout()”

4

1 回答 1

0

您应该等待 Facebook 上下文首先加载。您可以隐藏“注销”按钮,直到确保用户实际登录 Facebook。

CSS

#logout-btn {
  display: none;
}

JavaScript

window.fbAsyncInit = function() {
    FB.init({
        appId : 'APP_ID',
        cookie : true,
        xfbml : true,  
        version : 'v2.2' // use version 2.2
    });

    FB.getLoginStatus(function(response) {
        if(response.status === 'connected'){
            document.getElementById('logout-btn').style.display = 'block';
        }
    });
);
function logout(){
    document.getElementById('logout-btn').style.display = 'none';
    FB.logout();
}

HTML

<input id="logout-btn" type="button" onclick="logout()" value="Log out" />
于 2015-12-04T13:47:50.200 回答