无法在我的应用程序中从Facebook注销

时间:2011-05-19 06:45:25

标签: php facebook logout facebook-javascript-sdk

我在我的应用程序中使用facebook javascriptSDK。我用于登录和从Facebook注销。它正在成功登录,但无法从Facebook注销。我正在使用这个功能:         的baseUrl(); ?> / login / logout“class =”menu_link“onclick =”fb_logout();“>退出

   <script>
FB.init({appId: '061665c433986c406bbeda1b465350c1', status: true,
    cookie: true, xfbml: true});

function fb_login()
{
    FB.login(function(response)
        {
            if(response.session!=null)
            {
                window.location.href="http://www.allindiaarchitects.com/registration/index";
            }
        },{perms:'email,user_birthday,offline_access,publish_stream,read_friendlists'});
}


function fb_logout()
{
    FB.logout(function(response) 
    {
        if(response.session!=null)
        {
            //window.location.href="<?php echo $this->baseUrl(); ?>/login/logout";

        }
    });

}
</script>

该怎么办。任何身体都可以帮助我。

2 个答案:

答案 0 :(得分:0)

如果您在注销FB之后将用户重定向到单独的页面,则应将该重定向仅放在可以作为参数传递给FB.logout的回调函数中,如下所示:

<a href="#" onclick="mysignout(url);">logout</a>

然后仅从FB.logout

的回调函数中重定向
function mysignout(url)

{
    FB.logout(function()
    {
        top.location.href = 'url'
    });
}

FB.logout似乎在服务器上进行ajax调用以撤销身份验证,并且可能需要几秒钟才能成功完成。如果您在锚链接中重定向,则在某些浏览器中重定向之前FB.logout将无法成功完成。特别是,IE会发生这种情况。

请参阅此帖子:FB.logout not working in IE8

答案 1 :(得分:0)

问题是FB.logout方法只将用户从应用程序中注销,而不是从Facebook登录...