Facebook FB.logout仍然有一个对话框吗?

问题描述

| 使用FB的新JS SDK时,我注意到没有对话框告诉用户从我的应用程序注销时他们将从Facebook注销。 现在发生的事情在某种程度上是一个UI / UX问题:用户从我的应用程序注销,但也没有警告就自动从Facebook注销,这很烦人。 有没有人使用FB SDK方法或ѭ0内的其他功能解决此问题? 感谢您的帮助。     

解决方法

为此,您必须创建自己的UI对话框(或使用不建议使用的connect javascript sdk)。您可以弹出一个UI对话框,警告它们将同时退出您的应用程序和Facebook,或者在FB.logout函数中指定一个回调方法,此方法告诉他们之后它们都已注销。     ,不幸的是,这是按照此处所述进行设计的:http://developers.facebook.com/docs/reference/javascript/FB.logout/。由于这是Javascript SDK中的设计,因此我非常有信心地假设服务器端库将产生相同的结果。     ,我发现了一个窍门,使用户仅从客户端退出您的应用程序,但让他登录了Facebook:
FB._authResponse = null;
FB._userStatus = null;
之后,调用FB.api将返回正确的错误:
>>> FB.api(\'me\',log)
{\"error\":{\"message\":\"An active access token must be used to query information about the current user.\",\"type\":\"OAuthException\"}}
FB.getLoginStatus和FB.getAuthResponse都返回null或表现为用户未登录:
>>> FB.getLoginStatus(log)
{\"status\":null,\"authResponse\":null}
您甚至可以使用FB.login()再次登录用户。 但是,如果在FB.init配置中状态为true,则重新加载后,该用户将自动再次登录:
FB.init({
    appId      : \'yourappid\',status     : false,// will not load the user automatically on pageload/refresh
    cookie     : true,// will leave the userid in FB._userID
    oauth      : true,xfbml      : true
});
希望那些对你有帮助。     

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...