0

我的应用程序会自动刷新到 facebook 登录 url,但我的用户已经登录,所以不断重复刷新。

这是我的代码

$facebook = new Facebook(array(
    'appId'  => 'my app id',
    'secret' => 'my secret key',
    'cookie' => true,
));
$session = $facebook->getSession();
$fbme = null;
$loginUrl = $facebook->getLoginUrl(
    array(
        'canvas'    => 1,
        'fbconnect' => 0,
        'next' => 'my app uri',
        'cancel_url' => 'my app uri',
        'req_perms' => 'email,publish_stream,status_update,offline_access,user_birthday'
    )
);
if (!$session) {
   echo "<script type='text/javascript'>top.location.href = '$loginUrl';</script>";
   exit;
}
else {
  try {
      $uid      =   $facebook->getUser();
      $fbme     =   $facebook->api('/me');
  } catch (FacebookApiException $e) {
      echo "<script type='text/javascript'>top.location.href = '$loginUrl';</script>";
      exit;
  }
}
function d($d){
return TRUE;
}

我刷新页面的来源是:

"<script type='text/javascript'>top.location.href = 'facebook login url..';</script>

时刻刷新,不停歇。

我查看了谷歌,发现 p3p 政策:已header('P3P:CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"'); 添加但无法正常工作 :(

对不起,我的英语不好。

4

2 回答 2

3

我想你需要看看这个文件

iframes/P3P 标头中
的 Cookie 有些浏览器会让 iframe 根据 P3P 标头的存在设置 cookie。值得注意的是,IE 尊重此标头。理想情况下,您可能希望根据应用程序采用的隐私策略查找正确的值,但通常任何值都足够了。例如,示例应用程序发送这个:

P3P: CP="HONK"
于 2011-02-22T20:37:55.323 回答
0
  1. 下载最新版本的 PHP-Sdk 表单 My Apps -> your application
  2. 在 My App->your application->Edit Settings 中禁用 Stream post URL security 选项。

您可能正在使用旧版本的 PHP Sdk。

于 2011-04-17T05:16:31.080 回答