获取Facebook Graph API页面评论

23

我正在尝试从某个地方获取评论/评分,其 Facebook 页面可能看起来像这样:

https://www.facebook.com/pages/Dell-Rheas-Chicken-Basket/183254918389428

因此这个地方/页面的ID是183254918389428

您可以获取此地点的详细信息,但无法获取评分/评论:

https://graph.facebook.com/183254918389428

我在论坛上找到了一个方法,可以从此类页面获取评论:

https://graph.facebook.com/183254918389428/tabs/reviews?access_token=xxx

但我始终得到“无数据”的反馈:

{
   "data": [

   ]
}

所以我不是想获取应用程序评价/评分,而是为了某些地方。


嗨,你找到解决方案了吗?我也无法获取评分和评论,FQL查询也返回相同的空数据数组响应。 https://graph.facebook.com/fql?q=SELECT rating FROM review WHERE reviewee_id = 114448512302 - prasad
@prasad 不好意思,我还没有找到它,他们可能没有提供给用户使用。 - ant
好的,谢谢回复。目前我正在展示一个Facebook页面,它可以显示该地点的评分和评论,看起来这是唯一的方法,直到我们正式获得可用的API。 - prasad
3个回答

9
你需要获取页面访问令牌才能获取评论和评分。这是一个非常好的短教程,可以帮助你获取页面访问令牌:获取页面访问令牌
https://www.facebook.com/dialog/oauth?client_id=<APP_ID>&redirect_uri=<REDIRECT_URL>&scope=manage_pages&state=<STATE>

这将为您生成一个代码,请在以下位置使用该代码:
https://graph.facebook.com/oauth/access_token?client_id=<APP_ID>&client_secret=<APP_SECRET>&code=<CODE>

这将返回一个JSON响应,其中包含短期用户访问令牌。
接下来,使用短期用户令牌获取长期用户令牌:
https://graph.facebook.com/oauth/access_token?grant_type=fb_exchange_token&client_id=<APP_ID>&client_secret=<APP_SECRET>&fb_exchange_token=<SHORT_LIVED_TOKEN>

这将返回另一个JSON,其中包含长效用户令牌,您现在可以将其兑换为页面访问令牌:
https://graph.facebook.com/me/accounts?access_token=<LONG_LIVED_TOKEN>

这将返回一个JSON,其中包含与该用户帐户关联的页面的页面访问令牌。使用此页面访问令牌将其传递给以下内容以获取评级和评论:
https://graph.facebook.com/StoneArmsInc/ratings?access_token=<page_access_token>

你将获得该页面在 Facebook 上发布的所有评分。

希望能对某些人有所帮助。:)


这是否意味着长期有效的 access_token 在客户端(Web 浏览器)中被暴露了? - Blaise
非常感谢!这对我帮助很大! - Jimit Shah
@JimitShah 你从上面的解决方案中得到了评论和评分吗? - Maneesh Rao
是的,我知道了,但是我在2017年执行了这个代码,现在是2020年,Facebook进行了很多更改。一些东西已经被正式弃用了,因此代码会有所改变,但我可以确认在2017年,我成功获取了评分和评论 :) - Jimit Shah
你能帮我了解获取评论和评分的方法吗?我能获取其他Facebook商家的评论和评分吗? - Maneesh Rao

4

1
这是完全正确的。一个示例调用可能如下所示:FB.api('/{page-id}/ratings', 'GET', { access_token: '{access-token-from-page}' }, function (Response) { }); - Liglo App
This document refers to a feature that was removed after Graph API v3.2. - Yura Kosyak

1

1
很渺茫,但是...这个有预计完成时间吗?或者我可以订阅一些东西来获取通知,告诉我什么时候会有这个功能。链接的页面上没有什么可以帮助我得到这方面的信息。 - Dan Saltmer

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接