0

我想建立一个网站,向用户展示他的朋友在 facebook 上发布的所有视频,我知道如何拉取最近帖子的新闻提要,但我不知道如何拉取特定日期的所有帖子(所有从一天开始的帖子)。

我使用这个 FQL 调用来提取最近的视频:

SELECT post_id, source_id, actor_id, target_id, message, attachment, permalink, type FROM stream 
WHERE source_id IN (SELECT target_id FROM connection WHERE source_id=me() AND is_following=1) 
AND is_hidden = 0 
AND type = 80 
AND strpos(attachment.href, "youtu") >= 0

但我不知道如何将所有视频从一天的开始拉到结束......

编辑:

现在我的代码中有你的答案:

@feed = Koala::Facebook::API.new(current_user.token)
to = Time.now.to_i
yest = 1.day.ago.to_i
@feed.fql_query("SELECT post_id, actor_id, target_id, message, likes FROM stream WHERE source_id = me() AND created_time > #{yest} AND created_time < #{to} AND type = 80 
AND strpos(attachment.href, "youtu") >= 0")

并且 feed 变量返回我 # 而不是 json,我怎样才能从这个变量中获取 json?

4

1 回答 1

3

使用 FQL 可能是您最好的选择。您将需要用户的 read_stream 权限。

您可以使用Koala gem并运行以下命令:

require 'koala'
@graph = Koala::Facebook::API.new("YOUR_ACCESS_TOKEN")
@graph.fql_query("SELECT post_id, actor_id, target_id, message FROM stream WHERE source_id = me() AND created_time > START_TIME AND created_time < END_TIME LIMIT 10")

两者都START_TIME应该END_TIME是 unix 时间戳。在您的情况下,代表一天的开始和结束。

于 2012-04-04T19:51:05.720 回答