Javascript 已从Facebook注销,但仍会重新确认$user

Javascript 已从Facebook注销,但仍会重新确认$user,javascript,facebook-graph-api,facebook,Javascript,Facebook Graph Api,Facebook,全部,, 我正在使用FacebookConnect JS SDK对我网站的用户进行身份验证。我正在检查我的站点上是否设置了登录会话变量,甚至在点击代码检查用户是否登录facebook之前。这一切都很好,但是,当用户从facebook注销,并从我的网站注销时,我尝试返回到我的登录,它仍然认为用户登录了facebook,尽管我知道他们没有。我怎样才能防止这种情况发生?我试图在我的登录按钮上设置autologutlink=true,但它似乎不起作用 有什么想法吗 谢谢 在调用FB.getLoginSt

全部,, 我正在使用FacebookConnect JS SDK对我网站的用户进行身份验证。我正在检查我的站点上是否设置了登录会话变量,甚至在点击代码检查用户是否登录facebook之前。这一切都很好,但是,当用户从facebook注销,并从我的网站注销时,我尝试返回到我的登录,它仍然认为用户登录了facebook,尽管我知道他们没有。我怎样才能防止这种情况发生?我试图在我的登录按钮上设置autologutlink=true,但它似乎不起作用

有什么想法吗


谢谢

在调用FB.getLoginStatus并根据这些结果将用户重定向到适当的内容时,我总是有很好的结果。虽然对于一个应用程序来说有三个条件,但在我看来,后两个条件是完全相同的


在调用FB.getLoginStatus并根据这些结果将用户重定向到适当的内容时,我总是有很好的结果。虽然对于一个应用程序来说有三个条件,但在我看来,后两个条件是完全相同的


始终在FB.getLoginStatus回调中提供第二个参数,true为true…这是因为facebook响应缓存在SDK中。因此,始终使用true参数检查当前用户会话。

始终在FB.getLoginStatus回调中提供第二个参数,true为true…这是因为facebook响应缓存在SDK中。因此,请始终使用true param进行当前用户会话检查。

由@Madan提供的解决方案对我有效。由于我的应用程序是基于ajax的,因此无法重新加载浏览器。我每分钟运行一次setInterval回调函数,检查用户是否仍然登录到facebook

setInterval(function (){
    FB.getLoginStatus(function(response){
        if(response.status ==='unknown' && FB_LOGIN==1){
            alert('Your Facebook session has been expired');
            member_logout();
        }
    }, true);
},60000);

它就像一个符咒。

由@Madan提供的解决方案对我有效。由于我的应用程序是基于ajax的,因此无法重新加载浏览器。我每分钟运行一次setInterval回调函数,检查用户是否仍然登录到facebook

setInterval(function (){
    FB.getLoginStatus(function(response){
        if(response.status ==='unknown' && FB_LOGIN==1){
            alert('Your Facebook session has been expired');
            member_logout();
        }
    }, true);
},60000);
$facebook->destroySession();
它就像一个符咒

$facebook->destroySession();
或者你可以去这个链接

或者你可以去这个链接


谢谢,我试试看。您觉得使用php sdk还是JavaScript sdk更好?只是出于好奇,我更喜欢尽可能多地做客户端工作。加快服务器响应时间,降低服务器到外部API的网络流量。只在服务器端做一些您需要担心用于计算和存储的干净数据的事情。谢谢您的评论。我想从Facebook上获取用户的电子邮件地址,并在我的数据库中查找,以获取数据库中的用户id。使用这种方法可以吗?或者我需要使用php版本吗?请开始一个新问题,因为这不是这个问题的主题。谢谢,我会尝试的。您觉得使用php sdk还是JavaScript sdk更好?只是出于好奇,我更喜欢尽可能多地做客户端工作。加快服务器响应时间,降低服务器到外部API的网络流量。只在服务器端做一些您需要担心用于计算和存储的干净数据的事情。谢谢您的评论。我想从Facebook上获取用户的电子邮件地址,并在我的数据库中查找,以获取数据库中的用户id。使用此方法是否可行,或者我是否需要使用php版本?请开始一个新问题,因为这与此问题无关。为了进一步优化,可以在$document.click事件上触发FB.getLoginStatus代码。这样就不会分散用户的注意力。为了进一步优化,可以在$document.click事件上触发FB.getLoginStatus代码。这样就不会分散用户的注意力