3

我有一个带有两种不同类型用户(称为 A 和 B)的 Rails 应用程序。现在他们都可以使用 facebook 登录。但是,我需要 B 能够使用一些扩展权限进行 oauth,并且我不希望 A 给我扩展权限。

在 config/initializers/devise.rb 里面

config.omniauth :facebook, "API_KEY", "API_SECRET", :client_options => {:ssl => {:ca_path => '  /path/to/my/ssl/stuff'}}

我知道我可以添加

:scope => "extended_permissions"

但我只希望在 B 用户注册时发生扩展权限。

由于这是在初始化程序中,这甚至可能吗?或者我可以在应用程序的其他地方以某种方式配置.omniauth 并保持设计满意吗?

4

1 回答 1

1

文档中清楚地解释了

如果您想根据每个请求设置显示格式、auth_type 或范围,您可以将其传递给 OmniAuth 请求阶段 URL,例如:/auth/facebook?display=popup 或 /auth/facebook?scope =电子邮件。

来源:https ://github.com/mkdynamic/omniauth-facebook#per-request-options

于 2013-12-29T12:13:53.933 回答