我在玩facebook图形API时遇到了烦人的事情。我正在使用fb_graph这是facebook sdk的ruby包装器。我不确定我遇到的这个问题是facebook sdk的限制还是我应该联系fb_graph的所有者。
因此,使用fb_graph,这就是我连接用户的方式:
jane = FbGraph::User.fetch('janeid', :access_token => "janeaccesstoken")
jane.friends将列出所有简的朋友。但是,如果我试着让jane的朋友过生日或发电子邮件,它会返回nil。换句话说,
jane.friends[0].birthday => nil
但是,我可以通过这种方式访问朋友[0]生日:
bill = FbGraph::User.fetch(jane.friends[0].id, :access_token => "janeaccesstoken")
换句话说,如果我想要所有简氏朋友的出生日期清单,我不能这样做:
@jane.friends.each do |friend|
puts friend.birthday
end
相反,它必须是这样的
@jane.friends.each do |friend|
friendname = FbGraph::User.fetch(friend.id, :access_token => "janeaccesstoken")
puts friendname.birthday
end
我想这不是太糟糕但它确实让我想知道为什么会这样,因为实际上只有一些信息是零。例如,名称不是。
@jane.friends.each do |friend|
puts friend.name # => works!
end