Facebook 使用javascript sdk调试授权后的无限循环

Facebook 使用javascript sdk调试授权后的无限循环,facebook,authorization,facebook-javascript-sdk,facebook-php-sdk,Facebook,Authorization,Facebook Javascript Sdk,Facebook Php Sdk,和往常一样,FB让我拔头发 我已经能够在IE9中测试我的应用程序,但是当使用Firefox时,在用户授权canvas应用程序后,它进入重定向循环,向URL添加状态和代码变量 我将javascript和php sdk与以下代码一起使用: $facebook = new Facebook(array( 'appId' => $app_id, 'secret' => $application_secret, 'cookie' => true, // enable optional

和往常一样,FB让我拔头发

我已经能够在IE9中测试我的应用程序,但是当使用Firefox时,在用户授权canvas应用程序后,它进入重定向循环,向URL添加状态和代码变量

我将javascript和php sdk与以下代码一起使用:

$facebook = new Facebook(array(
'appId'  => $app_id,
'secret' => $application_secret,
'cookie' => true, // enable optional cookie support
));
$user = $facebook->getUser();
if(!($user))
{
echo"<script> top.location.href='" . $facebook->getLoginUrl(array('redirect_uri' 
=> $fbconfig['appBaseUrl'],
'scope' => 'manage_notifications,publish_stream,publish_actions'
)) . "'</script>";
exit();
}
$facebook=新的facebook(数组)(
“appId”=>$app\u id,
“机密”=>$application\u secret,
'cookie'=>true,//启用可选cookie支持
));
$user=$facebook->getUser();
如果(!($user))
{
echo“top.location.href=”$facebook->getLoginUrl(数组('redirect_uri'
=>$fbconfig['appBaseUrl'],
“范围”=>“管理通知、发布流、发布操作”
)) . "'";
退出();
}
我读到关于添加以下内容:
如果(window.location.hash='#=')window.location.hash='';但它似乎没有任何作用。

我的最新应用程序也有同样的问题。 在部分使用上面的代码解决了这个问题。 别忘了将PHP SDK升级到最新版本

<?
$facebook = new Facebook(array(
  'appId'  => 'XXX',
  'secret' => 'YYY',
));
$user = $facebook->getUser();
if ($user) {
  $logoutUrl = $facebook->getLogoutUrl();
} else {
  $loginUrl = $facebook->getLoginUrl(array(
    'scope' => 'user_likes'
  ));
  echo "<script type='text/javascript'>top.location.href = '$loginUrl';</script>";
    exit;
}
?>

确保您正在重定向到正确的URL。i、 e.如果用户正在使用http,则重定向URL将使用http,https也将使用http。@Imran这不是问题所在。无论如何,在10月1日之后,所有的应用程序都必须按照Facebook的路线图使用https。你曾经解决过这个问题吗?下面的解决方案对你有用吗?不,出于某种原因,它开始重定向到我服务器上的应用程序页面,而不是facebook。我要抓取最新的sdk,从头开始,再离开一会儿。我们将尽快研究此解决方案。谢谢