【问题标题】:Get Facebook app-scoped user id from global Facebook id, or username从全局 Facebook id 或用户名获取 Facebook 应用范围的用户 id
【发布时间】:2014-06-17 23:26:43
【问题描述】:

如果您有 Facebook,例如 Zuckerbergs 用户 id '4' 或用户名 'zuck',如何使用应用程序的访问令牌获取具有 Graph v2.0 的新应用程序范围 id?在文档中似乎找不到任何关于此的内容。

【问题讨论】:

标签: facebook-graph-api-v2.0


【解决方案1】:

这基本上是对另一个问题的答案 Get Facebook User ID from app-scoped User ID

基本上,最简单直接的流程是调用https://graph.facebook.com/?ids=http://facebook.com/[FBID/USERNAME]&access_token=[APP_ID]|[APP_SECRET]

为扎克伯格这样做,会让你熟悉

{
  "http://facebook.com/4":
  {
    "id": "4",
    "first_name": "Mark",
    "gender": "male",
    "last_name": "Zuckerberg",
    "link": "https://www.facebook.com/zuck",
    "locale": "en_US",
    "name": "Mark Zuckerberg",
    "username": "zuck"
  }
}

但是,如果该用户只是在 2014 年 5 月 30 日(转换日期)之后才第一次登录您的应用,他就会有类似...

{
  "http://facebook.com/4":
  {
    "id": "277123456789101",
    "first_name": "Mark",
    "gender": "male",
    "last_name": "Zuckerberg",
    "link": "https://www.facebook.com/zuck",
    "locale": "en_US",
    "name": "Mark Zuckerberg",
    "username": "zuck"
  }
}

为您的应用提供 277... 应用范围的 id。

【讨论】:

【解决方案2】:

除了@Raymond Yee 的评论,您还必须提供APP_IDAPP_SECRETFACEBOOK_USER_ID(注意这是数字ID,而不是用户名):

所以它适用于这个 URL:

https://graph.facebook.com/v2.3?access_token=[APP_ID]%7C[APP_SECRET]&ids=[FACEBOOK_USER_ID]

【讨论】:

  • 你必须输入用户ID,而不是用户名!!!将 FACEBOOK_USER_ID 替换为数字 id,而不是用户名
【解决方案3】:

您还可以从应用范围内的用户 ID 中获取真实的 Facebook ID。解决方案在这里https://stackoverflow.com/a/34450491/2181069

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-09
    • 2015-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-09
    相关资源
    最近更新 更多