2

我希望能够通过 FQL 或 Graph API 从一组使用 Koala gem 的 Facebook 用户返回帖子的 JSON 列表。目前我正在使用考拉的批处理功能从每个用户提要中调用前“x”个项目,然后展平数组并按时间排序。这样做的问题是,我希望能够获得第一个“x”个项目,而不是从每个用户那里获得 10 个,而只是从我查询的用户那里获得 10 个最近的帖子,这样我就可以检索下一个10 来自类似于您对自己的家庭饲料的期望。

这是我目前拥有的:

@oauth = Koala::Facebook::OAuth.new
@access_token = @oauth.get_app_access_token
@graph = Koala::Facebook::API.new(@access_token)
artists = []
followings.each do |following|
  artists << following.artist
end
feed = @graph.batch do |batch_api|
  artists.each do |artist|
    feed | batch_api.get_connections(artist.facebook, "feed", {"limit" => "10"})
  end
end
feed.flatten!
feed.sort! { |x, y| y["created_time"] <=> x["created_time"] }

编辑

我相信我已经找到了一种可能的 FQL 解决方案,如下所示

batch_api.fql_query("SELECT post_id, source_id, likes, actor_id, message, type FROM stream WHERE source_id IN(artist1, artist2...)")

但我现在返回了错误

[#<Koala::Facebook::APIError: OAuthException: (#606) Queries for multiple source_ids require a non-zero viewer that has granted read_stream permission>]

问题是我的应用程序不需要某人使用 Facebook 登录,因此我无法请求 read_stream 权限。无论如何,Facebook 应用程序本身可以请求这个吗?

4

1 回答 1

0

它应该可以工作,但是这里描述了一个 FB错误

我认为您无需做任何事情来解决它。

于 2012-06-05T13:50:23.300 回答