通过API作为页面发布到Facebook页面(具有管理员权限)

我想在Ruby中运行后台服务,每天发布一次我的Facebook页面。 最好的方法是什么? 我已经阅读了图谱API,但他们的大多数文档依赖于首先请求用户的权限。 如何为我自己使用而不是我的应用的最终用户授予这些权限? 例如,Twitter为您提供身份validation令牌以连接到您自己的帐户。

关于Graph API的许多答案都已过时。 我正在使用Ruby,所以对他们网站上的gem或任何SDK有任何建议。

更新

感谢@oldergod的回复。 我有一个更新的问题。

当我这样做时,我可以将myPageNamemyPageName的墙上。

 @graph.put_connections("myPageName", "feed", :message => "I am writing on my wall!") 

但是当我这样做时:

 @graph.put_connections("me", "feed", :message => "I am writing on my wall!", :link => "http://google.com") 

它作为me发布到myPageName

我究竟做错了什么? 我已经请求了manage_pages权限。

那么,你所寻找的gem肯定是考拉 。

更新:

看起来,你在设置Koala gem的实际配置时遇到了一些问题。 让我们完成每一步。

您需要设置一个新的Koala::Facebook::API 。 尽管这是一个可怕的名字,但这确实是与你的个人资料用户的联系。 要设置此项,您需要访问Facebook资源管理器并单击“ 获取访问令牌”按钮(确保使用您要发布消息的帐户登录)。 只需复制该访问令牌

 @user = Koala::Facebook::API.new(access_token) 

使用该access_token设置这个新的@user 。 现在每当你在@user上的任何Graph API请求中提到“我”时,你都会提到这个用户(@user)作为该请求的目标。 “我”只是用户自己的Facebook ID。

最后一步是发布到用户的Feed页面。

 @user.put_connections("me", "feed", :message => "I am writing on my wall!") 

所以,如果你想在你的墙上发布一个页面。 你可以这样做

 @user = Koala::Facebook::API.new(access_token) page_access_token = @user.get_connections('me', 'accounts').first['access_token'] #this gets the users first page. @page = Koala::Facebook::API.new(page_access_token) @page.put_connections(user_id, "feed", :message => "Page writting to user's wall!") 

只需转到graph.facebook.com/user_path并获取your_ID即可。