我正在使用Facebook的PHP SDK登录,第一次登录时它可以正常登录,但是如果你返回到应用程序,它就会陷入重定向循环。
该应用程序的流程如下,用户导航到应用程序的facebook页面选项卡,如果不喜欢的页面,他们看到一个喜欢我们的页面,如果不是他们被重定向到app.php,其中存在以下代码。
<?php
opcache_reset();
require 'sdk/facebook.php'; // Include facebook SDK file
$facebook = new Facebook(array(
'appId' => 'XXXXXX', // Facebook App ID
'secret' => 'XXXXXXXXXXXXXX', // Facebook App Secret
'cookie' => true,
));
$user = $facebook->getUser();
if ($user) {
try {
$user_profile = $facebook->api('/me');
session_start();
$fbid = $user_profile['id']; // To Get Facebook ID
} catch (FacebookApiException $e) {
error_log($e);
$user = null;
}
}
if ($user) {
$logoutUrl = $facebook->getLogoutUrl(array(
'next' => 'http:/localhost:8888/logout.php', // Logout URL full path
));
} else {
$loginUrl = $facebook->getLoginUrl(array(
'scope' => 'user_birthday', // Permissions to request from the user
));
}
?>
<!DOCTYPE html>
... html stuff
<?php if ($user): ?>
show the goods
<?php else: ?>
redirect to login
<script>window.top.location.href = '<?php echo $loginUrl; ?>'; </script>
<?php endif ?>
... rest of html page我读过很多有类似问题的人,但对于正在发生的事情和原因,我还没有找到可靠的回应。在这个阶段,JavaScript软件开发工具包还没有被使用。
任何帮助都将不胜感激!
发布于 2014-07-03 12:40:27
在获得用户数据后添加此代码
if(!empty($user))
{
if(!$user)
{
exit();
}
// YOUR FUNCTION
}https://stackoverflow.com/questions/20890972
复制相似问题