Rails Omniauth Facebook 扩展权限

15

我已经阅读了 omniauth oauth 的 RDoc 文档

  @consumer = OAuth::Consumer.new(key, secret, {
    :site               => "http://term.ie",
    :scheme             => :header,
    :http_method        => :post,
    :request_token_path => "/oauth/example/request_token.php",
    :access_token_path  => "/oauth/example/access_token.php",
    :authorize_path     => "/oauth/example/authorize.php"
   })

没有这样的范围。

https://graph.facebook.com/oauth/authorize?
    client_id=...&
    redirect_uri=http://www.example.com/callback&
    scope=user_photos,user_videos,publish_stream

我该怎么添加一个?我正在尝试覆盖oauth ... 有没有更好的解决方案?

1个回答

39

将此放置在初始化程序中

Rails.application.config.middleware.use OmniAuth::Builder do
    provider :facebook , 'app' , 'secret' , {:scope => "manage_pages"}
end

如果您使用多个作用域,则以逗号分隔:

:scope => "offline_access, manage_pages"

8
如果您正在使用多个作用域,则需要使用逗号分隔字符串: :scope => "offline_access,manage_pages" - rafamvc
2
提供者设置的文档在这里:http://rubydoc.info/gems/oa-oauth/0.2.6/OmniAuth/Strategies/Facebook。权限/范围可用列表在此处列出:https://developers.facebook.com/docs/reference/api/permissions/。 - clacke

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接