我将Facebook PHP SDK与我网站上的JS SDK结合使用。基本上,JS API将用户登录,然后PHP部分获取要在页面上显示的所有用户信息。
logging
部分正常工作:用户点击按钮,弹出对话框FB对话框。 logout
函数也适用于onClick事件,除了它没有真正起作用之类的。它会成功记录用户,但当它重定向回主页时,会抛出异常:
"验证访问令牌时出错:会话无效,因为用户已注销"。
刷新页面时,错误消失。这可能是由于注销功能没有正确删除会话吗?
这是我用来退出用户的功能:
function FBLogout(){
event.preventDefault();
FB.logout(function(response){
window.location.href = 'http://www.mydomain.com/';
});
}
有关如何解决此问题的任何建议?
答案 0 :(得分:0)
Facebook必须抛出此错误作为对API调用的响应。
成功注销用户后,调用已发送到失败的facebook,并返回此错误。
修改强>
从JS-SDK注销不会使PHP SDK生成的访问令牌失效。
这样做 -
FB.logout
的回调中,调用$facebook->destroySession()
- 您可以通过使用此调用对页面进行ajax调用来执行此操作,然后在回调时,用户将从JS注销,并且PHP