gpt4 book ai didi

facebook - FB.getLoginStatus() 回调在用户退出 Facebook 时不被调用

转载 作者:行者123 更新时间:2023-12-02 01:15:56 26 4
gpt4 key购买 nike

如果用户登录到 facebook,FB.getLoginStatus() 工作正常。但是,如果用户未登录 facebook,则不会调用 FB.getLoginStatus() 回调,我无法在我的代码中处理这种情况,因为我没有得到回调。我没有处于沙盒模式。

我还添加了“true”来强制回调 eg) FB.getLoginStatus(function(response){}, true) 。它没有帮助。这是一个错误吗?修好了吗?

如果不是,请在用户退出 Facebook 时提供解决方法。我已经坚持这个问题一个星期了。

function GetFBLoginStatus() {
FB.getLoginStatus(function(response) {
alert("inside call back function");
if (response.status === 'connected') {
var uid = response.authResponse.userID;
var accessToken = response.authResponse.accessToken;
alert("Connected FBID = " + uid);
} else if (response.status === 'not_authorized') {
alert("not_authorized");
} else {
alert("Not Logged into facebook");
}
return true;
}, true)
}

最佳答案

您可以创建一个auth.logout 事件:

FB.Event.subscribe('auth.logout', function(response) {
alert('logged out!');
});

或者更好的解决方案,创建一个 auth.authResponseChange 事件:

FB.Event.subscribe('auth.authResponseChange', function(response) {
console.log('The status of the session changed to: '+response.status);
alert(response.status);
});

更新:

<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({
appId : 'APP_ID',
status : true,
cookie : true,
xfbml : true,
});

FB.Event.subscribe('auth.login', function(response) {
alert('logged in');
});

FB.Event.subscribe('auth.logout', function(response) {
alert('logged out');
});
};

function GetFBLoginStatus() {
FB.getLoginStatus( function(response) {
console.log(response);
if (response.status === 'connected') {
var accessToken = response.authResponse.accessToken;
alert(accessToken);
} else if (response.status === 'not_authorized') {
//login function
alert('login first');
} else {
//login function
alert('login first');
}
}, true);
}

//Load the SDK Asynchronous
(function(d) {
var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
if (d.getElementById(id)) {return;}
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "//connect.facebook.net/en_US/all.js";
ref.parentNode.insertBefore(js, ref);
} (document));
</script>

<div>
<a href="#" onclick="GetFBLoginStatus()"><img src="../FacebookSmall.bmp" />ddd</a>
</div>

关于facebook - FB.getLoginStatus() 回调在用户退出 Facebook 时不被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11296236/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com