Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/409.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Facebook SDK注销功能问题_Javascript_Php_Facebook_Facebook Javascript Sdk_Facebook Php Sdk - Fatal编程技术网

Javascript Facebook SDK注销功能问题

Javascript Facebook SDK注销功能问题,javascript,php,facebook,facebook-javascript-sdk,facebook-php-sdk,Javascript,Php,Facebook,Facebook Javascript Sdk,Facebook Php Sdk,在我的网站上,我将Facebook PHP SDK与JS SDK结合使用。基本上,JSAPI会让用户登录,然后PHP部分会获取所有用户信息并显示在页面上 登录部分工作正常:用户单击按钮,弹出对话框FB。注销功能也适用于onClick事件,只是它实际上不起作用。它确实成功注销了用户,但当它重定向回主页时,会引发异常: 验证访问令牌时出错:会话无效,因为用户已注销 刷新页面时,错误消失。这可能是由于注销功能未正确删除会话造成的吗 以下是我用于注销用户的函数: function FBLogout(){

在我的网站上,我将Facebook PHP SDK与JS SDK结合使用。基本上,JSAPI会让用户登录,然后PHP部分会获取所有用户信息并显示在页面上

登录部分工作正常:用户单击按钮,弹出对话框FB。注销功能也适用于onClick事件,只是它实际上不起作用。它确实成功注销了用户,但当它重定向回主页时,会引发异常:

验证访问令牌时出错:会话无效,因为用户已注销

刷新页面时,错误消失。这可能是由于注销功能未正确删除会话造成的吗

以下是我用于注销用户的函数:

function FBLogout(){
   event.preventDefault();
   FB.logout(function(response){
      window.location.href = 'http://www.mydomain.com/';
   });
}

关于如何解决此问题的任何建议?

Facebook必须抛出此错误作为对API调用的响应

成功注销用户后,向facebook发送的呼叫失败,并返回此错误

编辑:

从JS-SDK注销不会使PHP SDK生成的访问令牌无效

这样做吧-

在FB.logout的回调中,调用$facebook->destroySession-您可以通过使用此调用对页面进行ajax调用来完成此操作,然后在回调时,用户将从JS和PHP注销
我在头球有一个试抓挡块。这个错误是由我的一个异常引发的。所以没关系。用户已注销,因此将抛出异常,但问题是什么-对meNo来说似乎很好,但事实并非如此。在try/catch块之前,有一个if语句检查用户是否登录。首先不应该抛出异常。哈哈,这就是为什么你必须共享你的代码,你一定是在谈论if$user。是的,对不起,我是新来的。这就是我正在做的检查,是的。