用facebook退出
如何在不使用fb-login按钮的情况下从facebook连接网站登录用户? 我想从codebehind(c#)做到这一点?
我发现只有一个选项可以通过FB.logout()
从Javascript中FB.logout()
。 似乎有点奇怪的是,代码隐藏没有API来做同样的事情。
如果您只想要一个简单的链接来注销用户,您可以形成这样的url:
https://www.facebook.com/logout.php?access_token=ACCESS_TOKEN&confirm=1&next=REDIRECT
只需用适当的值替换ACCESS_TOKEN
和REDIRECT
。 Facebook时不时地改变它,所以你必须注意这一点。 这仅适用于浏览器,但这样做的好处是用户不必等待加载JavaScript库。
您可以从facebook.API类(facebook.dll)的实例轻松完成此操作。 只需调用_api.LogOff()
我的痛苦经历告诉我你必须有回报(假); 在FB.Connect.logout()之后; 打电话如下:
FB.Connect.logout(doOnUserLogout()); 返回(假);
否则它似乎正在注销,modal dialog说明了这一点,但它不会记录用户。
我偶然发现了这个,因为它再次没有记录。
似乎ConnectSession在Logout中没有任何代码。 只是
void Logout(){ }
什么都没有。 相同的Login(){}
所以基本上你需要使用java脚本版本
是不是可以使用curl和preg_match(“/ a href = \”\ / logout.php(。*?)\“/”,$ page,$ logout_param);
然后…
curl_setopt($ ch,CURLOPT_URL,’http://m.facebook.com/logout.php’。$ logout_param [1]); curl_exec($ CH);
??
至少在php api中有一个注销方法。 为了使其正常工作,注销方法将用户重定向到facebook.com中的url,然后将您重定向回您的网站
$ facebook-> logout(“ http://site.com/returnAfterLogout.php ”)
但是我发现在那个请求中,javascript api仍然认为php api仍然认为他已登录,直到你尝试做api请求它会引发exception。
我在Webview中使用以下方法执行此操作:
webview.loadUrl("http://www.facebook.com/logout.php?confirm=1");