facebook php sdk无法正常工作

时间:2014-04-23 13:39:08

标签: php facebook facebook-php-sdk

我使用了两个代码而不是第一个代码:

    <?php
  require_once('fb/facebook.php');
  $config = array(
    'appId' => 'xxxxx',
    'secret' => 'xxxxx',
  );

  $facebook = new Facebook($config);
  $user_id = $facebook->getUser();
?>
<html>
  <head></head>
  <body>

  <?php
      function render_login($facebook) {
          $canvas_page = 'http://fbbost.eb2a.com/';
          // HERE YOU ASK THE USER TO ACCEPT YOUR APP AND SPECIFY THE PERMISSIONS NEEDED BY
          $login_url = $facebook->getLoginUrl(array('scope'=>'email,user_photos,friends_photos', 'redirect_uri'=>$canvas_page));
          echo 'Please <a href="' . $login_url . '">login.</a>';
      }

    if($user_id) {
      try {

        $user_profile = $facebook->api('/me','GET');
        echo "Name: " . $user_profile['name'];

      } catch(FacebookApiException $e) {
        render_login($facebook);
        echo "1";
        error_log($e->getType());
        error_log($e->getMessage());
      }
    } else {
       render_login($facebook);
       echo "2";
    }
  ?>

  </body>
    </html>

和第二个:

<html>
<head>
<title>NNN</title>
</head>
<body>
<?php
include "fb/facebook.php";
$facebook=new Facebook(array(
  'appId' => 'xxxxx',
  'secret' => 'xxxxx',
  'cookie' => true
));

$session=$facebook->getUser();
$me=null;

if($session){
  try{
    $me=$facbook->api('/me');
    print_r($me);
  }
  catch (FacebookApiException $e){
    echo $e->getMessage();
  }
}

if($me){
  $logoutUrl=$facbook->getLogoutUrl();
  echo "<a href='$logoutUrl'>Logout</a>";
}
else{
  $loginUrl=$facebook->getLoginUrl(array(
    'scope' => 'publish_stream,read_friendlists'
  ));
  echo "<a href='$loginUrl'>Login</a>";
}

?>
</body>
</html>

我登录时两个代码都返回相同的错误: 应用程序未设置:此应用程序的开发人员尚未正确设置此应用程序以进行Facebook登录。

1 个答案:

答案 0 :(得分:0)

我认为您的应用不公开。您需要将其设置为公开,以便将其用于除开发者自己的帐户之外的任何Facebook帐户。转到“状态和审核”并将应用公开。

此外,请检查您是否正确设置了应用域。