我添加了一个示例按钮,用于在我的应用中从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;
}
我收到一个错误&#34; FB.logout()在没有访问令牌的情况下调用&#34;
答案 0 :(得分: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" />