我尝试使用图谱API浏览所有Facebook好友列表结果,这样我就可以为用户计算所有朋友的数量(我,现在)。我使用Graph API Explorer进行测试,但也尝试使用基于网址的直接查询。
例如,我可以使用以下查询启动该过程:
https://graph.facebook.com/v2.0/me/friends?limit=5000&offset=0&access_token=MYTOKEN
这给了我19个结果和下一页链接。如果我单击/进入下一页链接,它会给出一个空数据数组(即使我有数百个朋友)。
当我使用limit
和offset
时,他们通常不会按预期行事。一个有效的例子是我问limit=10
和offset=10
。如果我这样做,它会给我原始列表的后半部分。
但是,只要我将offset
增加到19
以上,我就会得到一个空的数据数组。
好像我只有19个朋友。
如何从Graph API中获得超过19位朋友?
答案 0 :(得分:1)
实际上,context
字段似乎在这里工作。它的主要目的是向您显示当前用户和另一个用户有多少朋友 - 但如果您查询 当前用户(/me
) ,它似乎显示了所有当前用户的朋友的数量。 (有道理,有点 - 我和我的所有朋友“共同”与我自己......)
/2.0/me?fields=context
将为您提供以下格式的结构
{
"context": {
"mutual_friends": {
"data": [
{
"id": "…",
"name": "…"
},
{
"id": "…",
"name": "…"
},
…
],
"paging": {
"cursors": {
"before": "…",
"after": "…"
}
},
"summary": {
"total_count": 1234
}
},
total_count
下的summary
似乎是您的朋友总数。
答案 1 :(得分:0)
将API版本更改为1.0,然后您可以成功查询好友列表。
/v1.0/me?fields=friends