我正在尝试在我的网站上实施Facebook登录作为身份验证的一部分并使用Facebook JavaScript SDK。
使用简单的代码
window.fbAsyncInit = function() {
FB.init({ appId: 'xxxxxxxxxxxxx', //change the appId to your appId
status: true,
cookie: true,
xfbml: true,
oauth: true});
function updateButton(response)
{
if (response.status === 'connected')
{
$('#fb-auth').on('click',function(){
FB.api('/me', function(info) {
login(response, info);
});
//FB.logout(function(response) {
//logout(response);
//});
});
}
else
{
$('#fb-auth').on('click',function(){
FB.login(function(response) {
if (response.authResponse) {
FB.api('/me', function(info) {
login(response, info);
});
}
else {
;
}
}, {scope:'email,user_birthday,status_update,publish_stream,user_about_me'});
});
}
}
FB.getLoginStatus(updateButton);
//FB.Event.subscribe('auth.statusChange', updateButton);
};
Facebook登录工作正常,但我想要做的是当他们下次尝试使用Facebook登录时,他们应该获得登录弹出窗口和选择以另一个用户身份登录。
首次登录后,下次当他们再次尝试使用Facebook登录时,他们会在另一个标签页中登录到Facebook,只是将它们重定向到登录页面而不会弹出任何内容。
任何人都可以给我一些指针作为实现这一点需要做的事情。
答案 0 :(得分:0)
如果您想在每次访问应用时登录用户,那么当应用启动时,connected
上的状态为getLoginStatus()
时,您应该实施FB.logout。
所以会话被销毁,然后你可以再次打电话给FB.login
。就像 -
// app starts here
FB.getLoginStatus()
{
if(status == "connected")
// call FB.logout()
// call FB.login()
else
// call FB.login()
}