Rails发布到Facebook页面

我有一个我希望能够发布到fb页面的rails应用程序。 我了解考拉是促进这种功能的宝石。

我创建了一个Facebook应用程序,并有一个app_id&app_secret。

我的Facebook应用可以发布到一个页面,还是需要由页面管理员完成?

应用程序访问令牌

Facebook应用程序也可以获得自己的访问令牌,这些令牌可用于管理实时更新并执行某些其他无会话活动。 要获取您应用的访问令牌,只需运行:

@oauth = Koala::Facebook::OAuth.new(app_id, app_secret)
@oauth.get_app_access_token 

https://github.com/arsduo/koala/wiki/OAuth

编辑1从:https://github.com/arsduo/koala/wiki/Acting-as-a-Page和https://developers.facebook.com/docs/facebook-login/access-tokens/我明白我会需要获取访问令牌,然后获取页面令牌:

@user_graph = Koala::Facebook::API.new(user_access_token)
pages = @user_graph.get_connections('me', 'accounts')
page_token = @user_graph.get_page_access_token(page_id)
@page_graph = Koala::Facebook::API.new(page_token)
@page_graph.get_object('me') # I'm a page
@page_graph.get_connection('me', 'feed') # the page's wall
@page_graph.put_wall_post('post on page wall') # post as page, requires new publish_pages permission
@page_graph.put_connections(page_id, 'feed', :message => message, :picture => picture_url, :link => link_url)

上述所有都是自我解释,但我坚持一个基本的是我的Rails应用程序如何获得user_access_token。 由于我希望所有的发布都是由我的rails应用程序“作为一个页面”来执行的,所以我想要将这个user_access_token成像为一个常量在rails应用程序中,而不是每次rails应用程序需要发布时都要求。

考拉主页声明这是可能的: 配置

大多数应用程序只会使用一种应用程序配置 您不必每次都提供该值,您可以将Koala配置为使用全局设置:

# In Rails, you could put this in config/initializers/koala.rb
Koala.configure do |config|
  config.access_token = MY_TOKEN
  config.app_access_token = MY_APP_ACCESS_TOKEN
  config.app_id = MY_APP_ID
  config.app_secret = MY_APP_SECRET
  # See Koala::Configuration for more options, including details on how to send requests through
  # your own proxy servers.
end

https://github.com/arsduo/koala

因为我有app_id和app_secret,所以我仍然不确定如何获取上面要求的access_token和app_access_token。

是的,我迷路了。

编辑2随着user_access_token过期,我很困惑这是如何被硬编码到koala.rb?

链接地址: http://www.djcxy.com/p/32671.html

上一篇: Rails post to facebook page

下一篇: Facebook graph API not getting all events