2010-10-04 37 views
0

如果我在我的web应用程序中有一个Facebook用户登录,那么我希望能够发布给他的朋友......他们的新提要。为此,我需要一个我想发布给他的朋友的ID(至少我认为我应该需要一个ID或者也许有其他方法)。我有一个Facebook用户登录我的应用程序。如何获得他的朋友的ID?

所以问题是如何获得他的朋友的ID。我可以通过facebook_user.friends获取他朋友的所有名字。或者我也可以用facebook_user.friends.first获得第一个。

所以问题是如何根据他/她的名字得到一个特定朋友的ID?

我正在搜索谷歌和通过Facebook文档阅读,但无法找到任何东西,所以我将不胜感激任何答案。谢谢。

(我用facebooker2和mogli宝石与张贴在墙壁等互动)

回答

0

调用http://graph.facebook.com/youruser/friends将返回所有用户的好友资料。当然,您需要正确的extended permissions以及有效的身份验证令牌。

+0

谢谢你的回答!我可以得到朋友是的,但有没有像http://graph.facebook.com/youruser/friends/"Johnny Boy“这样的选项。这样我可以得到一个特定的用户? – necker 2010-10-05 15:16:23

+1

@necker:不,你必须得到所有的朋友,然后过滤 – marcgg 2010-10-06 08:16:13

+0

我使用的是facebooker2和mogli宝石。我可以通过current_facebook_user.friends获取名字。我不知道如何在我的视图或控制器中调用Internet地址http://graph.facebook.com/youruser/friends。我也不知道我怎么能应用任何过滤器呢?我上下读取了fb文档,并用例子尝试了他们的控制台,但仍无法使其工作。你可能会提供任何例子的铁轨或你如何做到这一点?你可以粘贴你的代码,如果你有一些,我会弄明白。非常感谢您再次回复。 – necker 2010-10-06 17:44:45

1

尝试使用fbgraph宝石RoR。 你可以在你的控制器中做这样的事情。

user = FbGraph::User.me(ACCESS_TOKEN) 

friendslist = user.friends 

friendslist将是用户朋友的详细信息的数组,可以很容易地过滤。

0

如果你想访问graph.facebook.com/youruser/friends的朋友,那么你有一个像RestClient一样的宝石。

用于例如Facebook的访问令牌可以通过

access_code = RestClient.get 'https://graph.facebook.com/oauth/access_token', 
        {:params => {:client_id => ENV['app_id'].to_s, 
         :redirect_uri => ENV['redirect_uri'], 
         :client_secret => ENV['app_secret'].to_s, 
         :code => code.to_s}} 

获得同样可以获取你的朋友。

相关问题