7

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

4

3 回答 3

3

这基本上是对另一个问题的答案 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。

于 2014-06-17T23:26:43.087 回答
1

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

所以它适用于这个 URL:

https://graph.facebook.com/v2.3?access_token=[APP_ID]%7C[APP_SECRET]&ids=[FACEBOOK_USER_ID]
于 2015-07-21T08:04:54.513 回答
-2

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

于 2016-05-24T06:28:40.767 回答