Facebook SDK通过PHP SDK撤销

时间:2016-01-21 12:11:47

标签: php facebook facebook-graph-api sdk

我正在尝试使用PHP SDK在Facebook上创建一个Web应用程序 我在安装和运行PHP SDK时没有任何问题 这是我的登录脚本index.php

<?php
session_start();
$app_id = '***************';
$app_secret = '******************************'; 
$my_url = 'https://www.domain.net/';
require_once __DIR__ . '/vendor/autoload.php';
$fb = new Facebook\Facebook(['app_id'=>$app_id,'app_secret'=>$app_secret,'default_graph_version'=>'v2.5',]);
$helper = $fb->getRedirectLoginHelper();
if (isset($_SESSION['facebook_access_token'])){
$fb->setDefaultAccessToken($_SESSION['facebook_access_token']);
try {
  $fbresponse = $fb->get('/me');
  $fbuserNode = $fbresponse->getGraphUser();
} catch(Exception $e) {
  error_log("index.php: Exception",0);
  $permissions = ['email'/*, 'user_likes'*/];
  $loginUrl = $helper->getLoginUrl('https://www.sofiariders.net/fblog-callback.php', $permissions);
  echo '<a href="' . $loginUrl . '">Log in with Facebook!</a>';
  exit;
}
?>

完全可以正常使用facebook登录,但问题是 - 我个人资料的ID。 从$ fbuserNode-&gt; getId()获取id 140261546352183 Facebook没有通过URL打开我的个人资料 https://www.facebook.com/profile.php?id=140261546352183

例如,通过使用网站findmyfbid.com我获得了同一个人资料的另一个ID - 它的100011050158477并且凭借该ID成功打开了URL https://www.facebook.com/profile.php?id=100011050158477

问题是 - 如何使用PHP SDK获取正常的配置文件ID? 为什么我的错误ID?

1 个答案:

答案 0 :(得分:1)

其他页面正在做一些不允许的事情:抓取。它直接从您的个人资料页面获取您的“真实”ID。在应用程序中,您只能获得“App Scoped ID” - 这足以识别用户。您只需使用以下网址:https://www.facebook.com/140261546352183 - 它会重定向到您的个人资料。

换句话说:你不能再获得“真正的”身份证,而你也不需要它。