获取Facebook Open Graph API查询的用户上下文ID

Fel*_* D. 4 facebook facebook-graph-api

我目前正在建立一个实验性社交网络来研究社交媒体对客户行为的影响.

我的用户通过Facebook OAuth提供商登录.我存储他们的访问令牌并查询Open Graph API以获取有关他们的信息.

我正在尝试使用我的一个用户的访问令牌为给定的用户上下文使用all_mutual_friends边缘,但我发现如何获得user-context-id获取该信息所需的内容.

它不是您要从中检索共同朋友的用户的ID.我试过了,但得到了一个错误.

我已经通过Open Graph文档浏览了一下,但没有发现任何相关信息user-context-id.

我怎样才能找回它?

Fel*_* D. 9

很奇怪,文档没有指定如何获取上下文ID,但我设法通过挖掘一点来获得它.

这是你如何获取all_mutual_friends数据:

GET /{user-id}?fields=context.fields%28all_mutual_friends%29&access_token={other-user-access-token}

然后,将在响应中给出上下文ID.

{
  "context": {
    "all_mutual_friends": {
      "data": [
        {
          "id": "1381033095543871",
          "name": "Dave Amiaaehjighi Putnamwitz",
          "token": <user token>,
          "picture": {
            "data": {
              "is_silhouette": true,
              "url": "https://fbcdn-profile-a.akamaihd.net/hprofile-ak-xpf1/v/t1.0-1/c15.0.50.50/p50x50/10354686_10150004552801856_220367501106153455_n.jpg?oh=82c2ce067f9c7f2c0a66d1efb16730e7&oe=5670F72F&__gda__=1450287355_17925d7381c8da5663c2349483f4b032"
            }
          }
        }
      ],
      "paging": {
        "cursors": {
          "before": "MTM4MTAzMzA5NTU0Mzg3MQZDZD",
          "after": "MTM4MTAzMzA5NTU0Mzg3MQZDZD"
        }
      },
      "summary": {
        "total_count": 1
      }
    },
    "id": <Context id>
  },
  "id": "1375274282788732",
}
Run Code Online (Sandbox Code Playgroud)

然后可以使用该上下文ID

GET /{user-context-id}/all_mutual_friends/

但是这一步非常无用,因为我们在第一个查询中获取了数据.

如果Facebook更新他们的文档以反映现实,那将会很好.