使用Open Graph / FQL从Facebook墙上检索帖子和评论

时间:2013-06-16 21:14:44

标签: facebook facebook-graph-api facebook-fql

我在尝试使用facebooks的api(FQL和Open graph)做一个相当简单的任务时发现了很多困难。
任务是标题说我从用户墙上获取后列表和相对评论我通过FQL尝试并打开图表而没有结果:

方法1)打开图形
简单的我/ feed查询几乎返回我想要的内容,但它包括自引用结果,如

{
  "id": "1614018744_10200682419255581", 
  "from": {
    "name": "Franco Martinelli", 
    "id": "1614018744"
  }, 
  "story": "\"UNO\" on his own status.", 
  "privacy": {
    "value": ""
  }, 
  "type": "status", 
  "created_time": "2013-06-16T13:49:58+0000", 
  "updated_time": "2013-06-16T13:49:58+0000"
},

我似乎无法找到要过滤的内容以排除这些记录,或者我应该在我的末尾过滤

方法2)在FQL中使用此查询

{"q1":"SELECT post_id, actor_id,target_id, message FROM stream 
WHERE source_id=me() 
AND type in (46,56,80,128,247) AND created_time < 1371254400 LIMIT 250",
"q2":"SELECT text from comment where post_id IN (SELECT post_id FROM #q1)"}

我得到自己的帖子但不是由其他人发布的帖子,而且限制条款以我所读过的内容以神秘的方式运作。
我使用了twitter api没有一个问题,我不能相信我必须经历所有这些混乱的简单请求。

1 个答案:

答案 0 :(得分:0)

以下是两个查询。您需要输入type ='newsfeed'然后会显示您朋友发布的帖子,就像您在facebook.com上的新闻Feed一样

getpost: ("SELECT actor_id, created_time, likes, post_id, message FROM stream WHERE filter_key IN (SELECT filter_key FROM stream_filter WHERE uid=me() AND type='newsfeed') AND is_hidden = 0"),
users: ("SELECT id, name, url, pic FROM profile WHERE id IN (SELECT actor_id FROM #getpost)")

http://fbdevwiki.com/wiki/FQL:stream