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

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

我想在 Ruby 中运行一个后台服务,以便每天在我的 Facebook 页面上发布一次。最好的方法是什么?我已经通读了 Graph API,但他们的大部分文档都依赖于首先向用户请求权限。我如何授予这些权限供我自己使用,而不是我的应用程序的最终用户?例如,Twitter 为您提供身份验证 token 以连接到您自己的帐户。

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

更新

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

当我这样做时,我可以作为 myPageName 发布到 myPageName 的墙上。

@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")

它以的身份发布到myPageName

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

最佳答案

嗯,您正在寻找的 gem 绝对是 Koala .

更新:

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

您需要设置一个新的 Koala::Facebook::API。尽管这是一个可怕的名字,但这确实是与您的个人资料用户的联系。要进行设置,您需要访问 Facebook Explorer然后点击Get Access Token 按钮(确保您登录的是您要发布消息的帐户)。只需复制该访问 token

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

使用那个 access_token 来设置这个新的 @user。现在,每当您在针对@user 的任何Graph API 请求中提及“我” 时,您都会提及此用户(@user) 作为该请求的目标。 “我”只是用户本身的 Facebook ID。

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

@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。

关于ruby-on-rails - 通过 API 作为页面发布到 Facebook 页面(具有管理员权限),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18558155/

相关文章:

ruby - 使用 BinData 从二进制数据创建用户定义的原始类型?

ruby - Ruby 中的Scheme 动态风的等价物

ruby-on-rails - mocha 是否在 stub (Rails)中运行代码?

ruby-on-rails - Rails 4 + PostgreSQL hstore,无法执行 "CREATE EXTENSION hstore"

ruby-on-rails - 设计和公寓 gem Multi-Tenancy 应用程序

ruby - Rails 3.2 遍历数组

objective-c - 有什么方法可以从 Facebook iOS SDK 返回的访问 token 中提取 session key 吗?

android - 如何获取用户信息。使用android facebook sdk?

facebook - 无法使用 ionic 登录(无法通过网络浏览器进行身份验证)

ruby-on-rails - 日志在生产中无法正常工作,作业延迟