Facebook GraphAPI和FQL API为相同的URL返回不同的值



我试图将我的facebook应用程序从FQL API(1.0)迁移到GraphAPI(2.3),但遇到了一些问题。

我的facebook应用程序的主要目标是获取指定链接(文章url)的点赞、分享和评论的当前计数。(我认为,类似于如何获得facebook共享,比如,只使用图形api的url的评论计数(以一种不推荐的方式)

在(旧的)FQL API中,我可以通过执行SELECT。。。FROM link_stat表。例如:

https://graph.facebook.com/fql?access_token=xxxxxxxxxxxx|yyyyyyyya&q=SELECT%20click_count%2Ccomment_count%2Ccommentsbox_count%2Clike_count%2Cshare_count%2Ctotal_count%2Cnormalized_url%20FROM%20link_stat%20WHERE%20url%20IN%20%28"http%3A//sport.wp.pl/kat%2C1715%2Ctitle%2CSwiat-pokochal-polskiego-sportowca-Mimo-ze-ledwo-dukal-po-angielsku%2Cwid%2C17449498%2Cwiadomosc.html"%29

以JSON形式返回信息,例如:

{
"data": [
{
"like_count": 21, 
"comment_count": 0, 
"click_count": 0, 
"commentsbox_count": 0, 
"total_count": 29, 
"share_count": 8, 
"normalized_url": "http://sport.wp.pl/kat,1715,title,Swiat-pokochal-polskiego-sportowca-Mimo-ze-ledwo-dukal-po-angielsku,wid,17449498,wiadomosc.html"
}
]
}

在新的GraphAPI(2.3)中,理论上该信息可通过以下途径获得:

URL和/{object id}/喜欢边缘:

https://developers.facebook.com/docs/graph-api/reference/v2.3/urlhttps://developers.facebook.com/docs/graph-api/reference/v2.0/object/likes

哪个返回值。例如:

{
"share": {
"comment_count": 0, 
"share_count": 42
}, 
"og_object": {
"url": "http://sport.wp.pl/kat,1715,title,Swiat-pokochal-polskiego-sportowca-Mimo-ze-ledwo-dukal-po-angielsku,wid,17449498,wiadomosc.html", 
"description": "Kibice wstrzymali oddech, dosu0142ownie. W sali su0142ychau0107 byu0142o tykaju0105cu0105 wskazu00f3wku0119 zegara zawieszonego na u015bcianie. Przy stole stau0142 Bogdan Wou0142kowski, nieruchomo patrzyu0142 na u015brodek, gdzie znajdowau0142a siu0119 wysoka piramida zu0142ou017cona z kilku poziomu00f3w bil i tru00f3jku0105tu00f3w. Na jej szczycie stau0142 czu0142owiek. Mijau0142y kolejne sekundy, napiu0119cie rosu0142o. Nagle "Wizard" wziu0105u0142 kij do ru0119ki, przymierzyu0142, huknu0105u0142 w bilu0119, ta uderzyu0142a w piramidu0119 i...", 
"type": "article", 
"title": "u015awiat pokochau0142 polskiego sportowca. Mimo u017ce ledwo dukau0142 po angielsku", 
"updated_time": "2015-04-14T19:46:03+0000", 
"id": "1055320127830544"
}, 
"id": "http://sport.wp.pl/kat,1715,title,Swiat-pokochal-polskiego-sportowca-Mimo-ze-ledwo-dukal-po-angielsku,wid,17449498,wiadomosc.html"
}

{
"1055320127830544": {
"data": [], 
"summary": {
"total_count": 0
}
}
}

遗憾的是,该值与FQL API的结果不一致。

所以,我的问题是:响应中的每个值是什么意思?为什么它与FQL不一致?

这似乎是API的一个已知问题。您可以关注此帖子以获取更新。

这篇文章很好地解释了如何获得份额。

我还注意到,对于API 2.1版及更高版本,响应中的share_count包含共享总数,包括用户直接在Timeline上共享的链接。对于2.0版本,我认为响应中的shares排除了这一点。

最新更新