Facebook ID retreival by PHP SDK


Facebook ID retreival by PHP SDK

我正在尝试使用PHP SDK在Facebook上制作Web应用程序我在安装和运行 PHP SDK 时没有任何问题这是我的登录脚本索引.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;
}
?>

它工作得很好q我正在使用Facebook登录,但问题是 - 我的个人资料的ID。从 $fbuserNode->getId() 我得到了 id 140261546352183Facebook不会通过URL打开我的个人资料https://www.facebook.com/profile.php?id=140261546352183

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

问题是 - 如何使用 PHP SDK 对我的普通配置文件 ID 进行分类?为什么我得到错误的id?

另一个页面正在做一些不允许的事情:抓取。它直接从您的个人资料页面获取您的"真实"ID。在应用中,只能获取"应用范围的 ID",该 ID 足以识别用户。您可以只使用以下 URL:https://www.facebook.com/140261546352183 - 它会重定向到您的个人资料。

换句话说:你无法再获得"真实"的ID,你也不需要它。