我刚刚将Omniauth从0.2.6
更新到1.1.1
,以便使用开发人员策略。 我的登录链接指向/auth/developer
如果环境是开发和/auth/facebook
如果生产。
Facebook战略仍然有效。 使用开发人员策略时,链接将转到内置的Omniauth登录页面,但在单击登录时返回404.此模型不使用Devise。
路由文件
get "/auth/:provider/callback" => "sessions#create"
.
.
.
get '*a', :to => 'errors#routing'
Omniauth初始化程序
Rails.application.config.middleware.use OmniAuth::Builder do
provider :facebook, [etc.]
provider :developer if Rails.env.development?
end
日志
Started GET "/auth/developer" for 127.0.0.1 at 2012-12-19 16:23:04 +0200
Started POST "/auth/developer/callback" for 127.0.0.1 at 2012-12-19 16:23:10 +0200
ActionController::RoutingError (No route matches "/auth/developer/callback")
今天在新的rails 4应用程序中进入今天,我正在使用此路由作为解决方法:
match '/auth/:provider/callback', to: "sessions#create", via: [:get, :post]