当我尝试在Facebook Graph API上获取所有“喜欢”(以前的粉丝页面)时,有时它会返回一个空集:
{
"data": [
]
}
我尝试使用https://graph.facebook.com/me/likes?access_token=MY_ACCESS_TOKEN和graph.facebook.com/vinch/likes?access_token=MY_ACCESS_TOKEN,但结果完全相同(空)。
知道它可能是什么吗?我需要知道用户是否喜欢(是粉丝)特定页面。
答案 0 :(得分:20)
为您的应用添加user_likes权限
答案 1 :(得分:5)
我在2010-12-12的Changelog中读到了:
GET [page-id] / members / [user-id]会 如果他或他返回个人用户 她是该页面的粉丝(Graph API 相当于pages.isFan)(rE322057)
因此,如果已知的user_id是具有此语法的已知page_id的粉丝,则可以使用Graph API进行检查。您需要提供有效的access_token。使用fields参数,您可以选择API返回的内容。例如。如果用户是粉丝,请附加“& fields = id,name,picture”以获取ID,名称和图片。
{
"data": [
{
"id": "712084216",
"name": "Mike Bretz",
"picture": "http://profile.ak.fbcdn.net/hprofile-ak-snc4/hs842.snc4/70441_712084216_5491098_q.jpg"
}
]
}
如果用户不是粉丝,您将获得空结果
{
"data": [
]
}
答案 2 :(得分:4)
如果您使用的是Graph API Explorer。您可以通过在顶部获取访问令牌按钮并指定user_likes并单击确定来设置权限。再次尝试您的代码..
希望这有帮助
答案 3 :(得分:0)
昨天facebook修好了(http://developers.facebook.com/live_status#msg_612)
您只能获得用户不喜欢的对象。例如,您无法通过page_id获取所有用户。
答案 4 :(得分:0)
如果你需要知道的是用户是否喜欢某个东西(而不是喜欢的列表或粉丝列表),这应该可以解决问题:http://developers.facebook.com/docs/reference/rest/pages.isFan。
答案 5 :(得分:0)
你无法通过API获得粉丝页面。 请关注此错误以获取更多信息: http://bugs.developers.facebook.net/show_bug.cgi?id=12880
答案 6 :(得分:0)
我的测试用户在获得了类似权限之前批准了我的应用,因此它从未获得过喜欢的授权。通过从测试用户的个人资料中删除该应用并再次授权,我能够获得他们的喜欢。
答案 7 :(得分:0)
由于权限问题,您无法获得likes
中的post
。
https://developers.facebook.com/docs/graph-api/reference/v4.0/object/likes#readperms