0

嘿,我正在开发一个 fb 画布应用程序,这个应用程序就像一个控制面板,如果你点击一个按钮,你会转到应用程序的其他部分等,等等,

我使用 facebook 的用户 id 来确定用户是否可以使用该应用程序,因为仅适用于少数人,所以我的问题是 facebook 有时会给我用户 id 有时没有,我使用这个简单的代码

$facebook = new Facebook(array(
  'appId'  => 'YOUR_APP_ID',
  'secret' => 'YOUR_APP_SECRET',
  'cookie' => true,

));

// Get User ID
$user = $facebook->getUser();

if ($user){ $auth=true; }else{ $auth=false; }

这段代码在我包含在每个文件中的“config.php”中,然后我使用 $auth 来确定用户是否可以看到我想要的信息,它总是在主页上工作,但有时当我跳转时到应用程序的其他页面(包括 config.php),它没有给我 userId,奇怪的是有时它会

我试图将其存储在会话中,但我意识到当它不显示用户 ID 时,也没有任何会话:S

4

1 回答 1

0

编辑:抱歉,我没有注意到您正在开发画布应用程序。但是,我将把它留在这里,告诉您仅获取用户 ID 是不够的。

处理 Facebook 身份验证的最简单方法可能是在您的网站上集成JS-lib 和登录按钮。然后,php SDK 将“自动”识别身份验证会话,因此您不必:)

另一方面,使用 ID 不足以对用户进行身份验证。您应该me使用图形 API 进行获取,以确保用户已对您的应用进行了身份验证:

try {
    $user_profile = $facebook->api('/me','GET');
} catch (Exception $e) {
    //Not authenticated
}
于 2012-05-04T09:13:41.703 回答