我从按钮单击事件调用 Facebook JS SDK 的 FB.getLoginStatus。我的问题是,如果 status 参数设置为 true,则会触发浏览器弹出窗口阻止程序,从而阻止显示登录对话框。但是,当我的状态为 false 时,不会触发弹出窗口阻止程序。我需要将状态设为 true,因为我的网站需要知道用户是否已登录 Facebook,而无需刷新页面。False 参数值意味着 FB 只获取缓存的登录状态,如果用户在您的网站上退出 Facebook,这可能是错误的。
我怎样才能解决这个问题?
这是一些说明问题的代码
$('.my-button').click(function () {
FB.getLoginStatus(function (response) {
if (response.status != 'connected') {
FB.login(function (r) {
if (r.status == 'connected') {
alert('logged in');
}
});
}
}, true);
});