php - 从 app_scoped_user_id 中查找 Facebook 全局配置文件 ID

标签 php facebook facebook-graph-api

这个问题在 Stack Overflow 上被问过很多次,但所有答案都解释了如何将 Facebook 个人资料 ID 转换为 app_scoped_user_id。我要求的恰恰相反:

  • 我有一个 app_scoped_user_id,由 Facebook Graph API 提供。
  • 我想要全局配置文件 ID,这样我就可以输出指向用户 Facebook 页面的链接。

这是我的 PHP 应用程序的流程:

当使用我自己的 Facebook 帐户进行身份验证时,这是图形对象的内容:

array (size=11)
  'id' => string '1117686364915316' (length=16)
  'email' => string 'greg.bowler@g105b.com' (length=21)
  'first_name' => string 'Greg' (length=4)
  'gender' => string 'male' (length=4)
  'last_name' => string 'Bowler' (length=6)
  'link' => string 'https://www.facebook.com/app_scoped_user_id/1117686364915316/' (length=61)
  'locale' => string 'en_GB' (length=5)
  'name' => string 'Greg Bowler' (length=11)
  'timezone' => int 1
  'updated_time' => string '2015-06-23T10:12:53+0000' (length=24)
  'verified' => boolean true

由此,我需要能够提供指向我的 Facebook 帐户的链接。这可以通过知道 Facebook 帐户的 ID 轻松完成,购买去 http://facebook.com/profile.php?id=XXXXX ,如果您为帐户命名,它甚至会重定向到正确的页面。

但是,图形对象响应中指定的 ID 不是我的全局 Facebook ID;它是一个 app_scoped_user_id,特定于我正在验证的应用程序。

如何将 app_scoped_user_id 转换为我帐户的全局 ID?

例如网站http://findmyfacebookpageid.com/这样做,尽管它的源代码是封闭的。

我可以在此处向服务提供我的 app_scoped_user_id:http://findmyfacebookpageid.com/get.php?url=https://www.facebook.com/app_scoped_user_id/1117686364915316

它返回:

{
facebook_id: "100000218905189"
}

为了证明这个问题是可以回答的,我可以使用返回的 facebook_id 值通过访问 http://facebook.com/profile.php?id=100000218905189 来访问我的实际 Facebook 页面

最佳答案

这个问题已经被问过几次了(Get Facebook User ID with Facebook App Scope ID)

您不应该能够从应用范围的 ID 中获取全局 ID。 Facebook 正在慢慢修复找到它的所有方法,因为它们被认为是“黑客”。

既然你提到了,从用户的个人资料页面有很多方法可以找到你的全局 ID,这可能也会被 Facebook 及时修复,但如果你仍然感兴趣,这个 ( How to find my own facebook ID? (not the app-scoped ID) ) 问题的一些答案可能会有用。

关于php - 从 app_scoped_user_id 中查找 Facebook 全局配置文件 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31050182/

相关文章:

ios - Swift 的 Facebook SDK 文档是否过时?对应的SDK版本是多少?

php - XAMPP,PHP : echo adds two spaces to blob read from database

javascript - Facebook 应用 : add dynamic content to user's news feed

php - 如何使用 sed() 将所有\r\n 替换为不同的行尾转义序列?

facebook - Symfony2 + PHP Facebook Api

php - Facebook PHP SDK : Unknown SSL protocol error

facebook - Graph API - 为 Facebook 应用程序创建新相册

java - Spring 社交 Facebook 更新过期 token

PHP 脚本不从列中获取数据

php - 如何从 MySQL 创建 HTML 表?