我正在开发一个应用程序,我想要它做的是:
- 在用户的墙上贴一个 poto
- 实时获取此帖子将收到的点赞数
我遇到的第一个问题是根据 post-id 获取点赞数,这是我的照片上传代码:
FB.api('/photos', 'post', {
message: $user_submited_string,
url:'http://example/url/image.jpg'
}, function(response){
if (!response || response.error) {
//error handler
} else {
var posted_content_id = response.postid;
console.log(posted_content_id);
})
但是当我把这个posted_content_id
变量放入 Open Graph Debugger 时,我不会得到喜欢的数量作为回报:
{
"id": "1685033176_4107146412059",
"from": {
"name": "João Paulo Apolinário Passos",
"id": "1685033176"
},
"picture": "https://fbcdn-photos-a.akamaihd.net/hphotos-ak-prn1/548929_4107355417284_1018318871_s.jpg",
"link": "https://www.facebook.com/photo.php?fbid=4107355417284&set=a.4107146292056.1073741826.1685033176&type=1&relevant_count=7",
"name": "My Test App Photos",
"icon": "https://fbstatic-a.akamaihd.net/rsrc.php/v2/yz/r/StEh3RhPvjk.gif",
"actions": [
{
"name": "Comment",
"link": "https://www.facebook.com/1685033176/posts/4107146412059"
},
{
"name": "Like",
"link": "https://www.facebook.com/1685033176/posts/4107146412059"
}
],
"privacy": {
"description": "Public",
"value": "EVERYONE",
"friends": "",
"networks": "",
"allow": "",
"deny": ""
},
"type": "photo",
"status_type": "added_photos",
"object_id": "4107355417284",
"application": {
"name": "My Test App",
"id": "178883808932511"
},
"created_time": "2013-04-10T01:20:12+0000",
"updated_time": "2013-04-10T01:20:12+0000"
}
其中不包含我的图片的类似计数。所以第一个问题是:如何获得用户插入的图片的点赞数?
第二件事是,在得到喜欢的数量之后,我想对它们进行排名。为此,我考虑将它们存储到数据库中并设置一个 cron 作业来检查新帖子并使用新帖子更新排名。当我在寻找如何做到这一点时,我遇到了 Facebook 开发者文档的“实时更新”部分。但对我来说,我不清楚我是否可以实时获得类似的计数以及如何获得。这是我的第二个问题:我可以使用本机“实时更新”实时获取图像的点赞数吗?如果这不可能,如何创建我自己的计数器?扩展令牌和 cronjobs?
我将这两个问题合二为一,因为也许第二个问题的答案也是第一个。我需要知道的最后一件事:即使它是可行的,做这样的事情在某种程度上违反了 Facebook 政策?