[英]Facebook getLoginUrl() not redirected to specified page
当用户尝试使用其Facebook帐户登录到我的网站时,我试图重定向到一个脚本,该脚本针对我的数据库检查用户ID,以查看他们是否已注册。 当我单击“登录”时,它会弹出一个Facebook页面,以使用fb凭据登录,但随后仅重定向到mywebsite的主页,而不是运行用于对照数据库检查用户的脚本。
这是我尝试登录的主页上的代码。
<?php
require '.../src/facebook.php';
$facebook = new Facebook(array(
'appId' => 'APP_ID',
'secret' => 'SECRET',
'cookie' => true,
));
//2. retrieving session
$session = $facebook->getUser();
//3. requesting 'me' to API
$me = null;
if ($session) {
try {
$uid = $facebook->getUser();
$me = $facebook->api('/me');
} catch (FacebookApiException $e) {
error_log($e);
}
}
//4. login or logout
if ($me) {
$logoutUrl = $facebook->getLogoutUrl(array(
'next'=>'http://.../logout.php'
));
} else {
$loginUrl = $facebook->getLoginUrl(array(
'next'=>'http://.../checkFBLogin.php'
));
}
?>
进一步:
<?php if ($me): ?>
<a href="<?php echo $logoutUrl; ?>">Logout with Facebook</a>
<?php else: ?>
<a href="<?php echo $loginUrl; ?>">Login with Facebook</a>
<?php endif ?>
在登录Facebook之前,是否有一种方法可以检查我的数据库也将很有帮助,以检查它们是否已注册到我的网站。
数组中键的名称不是它的redirect_url。
$loginUrl = $facebook->getLoginUrl(array(
'redirect_url'=>'http://.../checkFBLogin.php'
));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.