Facebook后端登录


Facebook backend login

我一直在使用相同的代码。我试着使用它,但它不允许我连接。前端javascript一个工作,我的应用程序ID和所有匹配。由于我想登录用户,我会进行后端验证(就像任何理智的人一样(,在verifyfacebook.php(你正在查看的东西(中,所有包含的内容都在那里,我验证了FACEBOOK_APP_ID和SECRET都是正确的,并且它们与它们的值相呼应。

我就是不明白发生了什么!有人看到我遗漏的东西了吗?

try {
    $facebook = new Facebook(array(
      'appId'  => FACEBOOK_APP_ID,
      'secret' => FACEBOOK_SECRET_ID,
      'cookie' => true,
    ));
    $session = $facebook->getSession();
    $fbme = null;
    // Session based graph API call.
    if ($session) {
        try {
            $uid = $facebook->getUser();
            $fbme = $facebook->api('/me');
        } catch (FacebookApiException $f) {
        }
    }
} catch (Exception $e) {
}

我只是试着简单地举个例子,但它仍然不起作用。

$facebook = new Facebook(array(
  'appId' => FACEBOOK_APP_ID,
  'secret' => FACEBOOK_SECRET_ID,
  'cookies' => true
));
// Get User ID
$uid = $facebook->getUser();
echo $uid;

它回声为"0">

cookie参数不再与3.0.x一起使用。在我删除所有cookie(包括会话cookie(之前,以下代码不起作用。redirect_uri是可选的,只需确保重定向到执行此代码的同一页面即可。

$facebook = new Facebook(array(
    'appId' => FACEBOOK_APP_ID,
    'secret' => FACEBOOK_SECRET_ID,
));
$user = $facebook->getUser();
if ( $user )
{
    echo sprintf(
        '<a href="%s">Logout</a>',
         $facebook->getLogoutUrl(array(
            'redirect_uri' => URL,
         ))
    );
}
else
{
    echo sprintf(
        '<a href="%s">Login</a>',
         $facebook->getLoginUrl(array(
            'redirect_uri' => URL,
            'scope'        => SCOPE,
         ))
    );
}
if ( $user )
{
    try
    {
        print_r($facebook->api('/me');
    }
    catch ( FacebookApiException $e )
    {
        print_r($e);
    }
}

这篇文章应该会有所帮助:

http://developers.facebook.com/blog/post/525/

试着按原样实现代码,然后一旦它工作起来,你就可以根据自己的需求进行定制。