$ facebook-> getUser()突然停止工作

use*_*er6 4 php facebook facebook-graph-api

我在我的网站上登录了facebook.这已经有一段时间了,但昨天突然停止了工作.我已经将问题跟踪到getUser()方法,它现在似乎总是返回0.

我的代码看起来像:

<?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
        )
    );
}
?>
Run Code Online (Sandbox Code Playgroud)

我尝试了什么(可以在我的历史中找到)

  1. 将SDK更新到最新版本
  2. Facebook PHP SDK的解决方案- getUser()突然返回0(添加2 $ CURL_OPTS)
  3. 突然解决,getUser变为返回0.(PHP 3.1.1 SDK)(将base_domain添加到$ DROP_QUERY_PARAMS)
  4. Facebook登录的解决方案突然不再起作用了?(增加curlopt_connecttimeout)
  5. 创建一个新的应用程序,没有运气

我正在使用PHP 5.3.3版

我昨天下午一直试图让它工作,没有任何运气:(

有谁知道可能是什么问题,更重要的是,可能是什么解决方案?

谢谢

h2O*_*h2O 9

您的端口80或端口241可能被阻止导致CurlException 7.要检查是否只是在您的网站上传示例文件.它会显示错误.

就我而言,我在000webhost.com上托管了我的测试域.它最近阻止了导致同样错误的端口80.当我将我的域名移动到另一个托管服务时,问题就解决了.

我希望这有帮助.

=====编辑=====

该问题的解决方案是(我认为虽然没有证明)获得https连接,因为我遵守php sdk在http连接中不起作用.看看我的问题在这里

====== YEAH!最后的最终和正确的答案=======

只有当您的Web主机禁用了cURL时才会出现这种情况(适用于100%类似问题的情况).如果安装了cURL,您的网站将正常运行.通常,用户收到的错误(如果错误报告已打开)是
Fatal error: Uncaught CurlException: 7: couldn't connect to host thrown in /home/.../base_facebook.php on line ...