使用Koala从对象列表中获取更多信息,以访问Rails上的Facebook Graph API

时间:2013-04-01 02:37:16

标签: ruby-on-rails facebook facebook-graph-api koala

在实例化与Graph API的连接后,我可以这样做:

@graph.get_connections("me", "friends")

这将返回包含其姓名和ID的朋友列表。

如果我想要这些朋友的更多信息,我可以这样做:

@graph.get_connections("me", "friends").each do |f|
    fdetails = get_object(f['id'])
    # do stuff
end

但是这样我就不得不向朋友们提供与朋友数量一样多的请求!

是否有些东西可以从初始调用中为每个用户提供我想要的字段?

简而言之,我该怎么做?

@graph.get_connections("me", "friends", :fields => "image,bio")

1 个答案:

答案 0 :(得分:2)

您可以在控制器中尝试此操作:

 graph  = Koala::Facebook::API.new(session[:token])
          user = graph.get_object("me")
          @friends = graph.get_connections(user["id"], "friends?fields=id,name,link")
session[:token] : contain my token

并以您的视图为例:

    <% @friends.each do |f| %>
<%= link_to f["name"], f["link"], :target => '_blank'%>