我有这样的代码:Facebook的权限请求,无尽的重定向循环
require 'facebook.php';
$facebook = new Facebook(array(
'appId' => 'xxxxxxx',
'secret' => 'yyyyyyy',
'baseUrl' => 'http://xxx.yyy.zz/',
'appBaseUrl' => 'http://apps.facebook.com/xxxxxx/',
'fileUpload' => 'true',
));
$user = $facebook->getUser();
$params = array(
scope => 'publish_stream,user_photos',
redirect_uri => 'http://www.facebook.com/xxxxxx?sk=app_123456789'
);
if ($user){
....
}
$loginUrl = $facebook->getLoginUrl($params);
if ($user){
// nothing
}else{
echo "<script type=\"text/javascript\">top.location.href = \"".$loginUrl."\";</script>";
}
我的问题是,它进入一个无限循环......遍地重新加载页面。 有人可以帮我解决这个问题吗?
非常感谢!
但是,如果我将其更改为APP的托管网址,它将离开Facebook页面,在其中嵌入(iFrame) – VORiAND
,然后尝试用'document.location.href'替换'top.location.href',或者将您的redirect_uri设置为您服务器上的单个脚本页面(使用fb sdk初始化,例如http://yourdomain.com/fb_auth.php)并重定向到您的标签url。那么用户应该被认证。 –
没有变化:(试过了,redirect_uri是一个包含JS重定向的.php(包含facebook数组),但它仍然进入重载循环:(我不明白这是什么问题.... – VORiAND