我有这段代码:
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>";
}
我的问题是,它进入无限循环......一遍又一遍地重新加载页面。 有人可以帮我解决这个问题吗?
非常感谢!
答案 0 :(得分:0)
我认为问题出在redirect_uri
上。尝试定义您的网址的真实路径(www.yourdomain.com/app/index.php),因为Facebook会向该网址发送POST(包括代码),并且不会将其与应用数据一起传递或签名请求您的iFrame应用程序。
答案 1 :(得分:0)
问题是主要逻辑不在index.php中。在我把所有东西都放回去后,重定向停止了。