我正在使用codeigniter,并使用javascript sdk / php sdk。但是,注销网址从getLogoutUrl()生成,也在facebook.com注销我的帐户。
仅为我的网站应用程序清除会话的任何功能..?
答案 0 :(得分:3)
您只能撤消对您的应用的权限。看看这个页面:
http://developers.facebook.com/docs/howtos/login/server-side-logout/
以下是用于实现此目的的释义PHP代码:
$token = $_SESSION["access_token"];
if($token)
{
$graph_url = "https://graph.facebook.com/me/permissions?method=delete&access_token=".$token;
$result = json_decode(file_get_contents($graph_url));
}
else
{
echo("User already logged out.");
}
答案 1 :(得分:2)
将以下内容添加到您网站的最开头
session_start();
if($_GET['logoutfrmfb']=="logout")
{
unset($_SESSION['fb_{your app id}_code']);
unset($_SESSION['fb_{your app id}_access_token']);
unset($_SESSION['fb_{your app id}_user_id']);
}
在src / base_facebook.php中查找并编辑以下行(可能是第506-515行)
public function getLogoutUrl($params=array()) {
return $this->getUrl(
'www',
'logout.php',
array_merge(array(
'next' => $this->getCurrentUrl().'?logoutfrmfb=logout',
'access_token' => $this->getAccessToken(),
), $params)
);
}
适合我!
答案 2 :(得分:1)
是的..我有同样的问题..你可以通过以下方式来做到这一点:
在您的页面注销按钮或图片中:
<a href="logout.php">Log Out</a>
logout.php -------------------------------------------&gt ;
<?php
require 'facebook.php'; //including the facebook php sdk
$facebook->destroySession();
header( "location:index.php" );
?>
使用facebook=>getLogoutUrl();
&lt;&lt;&lt;&lt;&lt;&lt;这使你的facebook.com注销......
我希望这就是你要找的东西:)