ruby-on-rails – 应用程序ID和应用程序秘密对于每个请求都不同,使用omniauth-facebook?

omniauth-facebook自述文件提到了如何在初始化程序中设置它,以及如何设置仅适用于每个请求的范围的选项.我想知道是否可以为每个请求设置应用程序ID和应用程序秘密.

解决方法

你可以这样做:

在你的omniauth.rb上,这样做:

Rails.application.config.middleware.use OmniAuth::Builder do
  provider :facebook,:setup => true
end

然后在控制器上,您必须定义以下内容

def setup
 request.env['omniauth.strategy'].options[:client_id] = @site.facebook_key
 request.env['omniauth.strategy'].options[:client_secret] = @site.facebook_secret
 render :text => "Setup complete.",:status => 404
end

当然,您必须在路由器上添加关联的路由.

#Facebook Omniauth routes
  match '/auth/facebook/callback' => 'session#authorize_callback'
  match '/auth/facebook/setup' => 'session#setup'

祝你好运

问候.伊万.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...