我在我的网站上有facebook登录。这一段时间运行良好,但昨天突然停止工作。我已经将问题跟踪到现在总是返回0的getUser()方法。
我的代码如下所示:
<?php
require_once('facebook.php');
$facebook = new Facebook(array(
'appId' => 'xxxxxxxxxxxxx',
'secret' => 'xxxxxxxxxxxxxxxxxxxxxxxxxx'
));
$user = $facebook->getUser();
if ($user) {
try {
$profile = $facebook->api('/me');
$logoutUrl = $facebook->getLogoutUrl(
array(
'next'=>$baseUrl.'/fblogin/fblogin.php?logout'
)
);
$userIsLoggedIn=true;
} catch (FacebookApiException $e) {
echo '<pre>'.htmlspecialchars(print_r($e, true)).'</pre>';
$user = null;
$loginUrl = $facebook->getLoginUrl(
array(
'scope'=>'email,publish_stream',
'redirect_uri'=>$returnAfterLoginUrl
)
);
}
}else{
$loginUrl = $facebook->getLoginUrl(
array(
'scope'=>'email,publish_stream',
'redirect_uri'=>$returnAfterLoginUrl
)
);
}
?>
我已经试过(和能找到回到我的历史)
- 更新的SDK到最新版本的
- 解决方案Facebook PHP SDK - getUser() suddenly returns 0(加2 $ CURL_OPTS)
- 解决方案suddenly, getUser became to return 0.(PHP 3.1.1 SDK)(将base_domain添加到$ DROP_ QUERY_PARAMS)
- 解决方案的Facebook login is suddenly not working anymore?(增加curlopt_connecttimeout)
- 创建一个新的应用程序,没有运气
我使用PHP版本5.3.3
我一直在试图得到它的工作自从昨天下午,没有任何运气:(
有谁知道可能是什么问题,更重要的是,什么可能是解决方案?
谢谢
谢谢您的回复, 沙盒模式禁用,设置是正确的(它工作得很好了几个星期,直到昨天)。 更改loginUrl这样做不会有任何好处,因为我的范围内没有$ this? – user6
那么用户重定向到Facebook登录并登录后会发生什么?它的工作呢? – drarkayl
用户给了应用程序适当的权限后,他返回的网站,其中getUser()仍然会返回0 :( – user6