【发布时间】:2011-07-12 20:29:31
【问题描述】:
我已经解决这个问题 7 个小时了,但我仍然不知道。也许你们中的一个可以帮助我。
我只是想将使用 Omniauth 的 Devise 1.2rc 的 OAuth 功能集成到我的 Rails 应用程序中。
- 我一直在使用 Devise 的本教程:
https://github.com/plataformatec/devise/wiki/OmniAuth%3A-Overview
我已经做了他们告诉你的一切......
是的,我在 devise.rb 中添加了以下行:
config.omniauth :facebook, "APP ID", "APP SECRET"
我已将 :omniauthable 添加到我的用户模型中,以及教程中描述的类函数
我已经实现了omniauth_callbacks 控制器,以及回调函数,并且我已经在我的routes.rb 中指定了omniauth_callbacks 控制器
当我运行“rake 中间件”时,它会列出 Omniauth 中间件:
use OmniAuth::Strategies::Facebook
我已经直接从 Git 存储库 master 分支安装了 Devise,所以它是最新的
我已经安装了 Omniauth 1.2.0.beta5,这是最新版本。在我的 Gemfile 中它说:
gem 'oa-oauth', '0.2.0.beta5', :require => 'omniauth/oauth'
我已经重启了服务器,很明显
但是,当我尝试请求此 URL 时:
http://localhost:3000/auth/facebook
它只是说
ActionController::RoutingError(没有路由匹配“/auth/facebook”):
/user/auth/facebook 也不起作用。
不幸的是,由于我没有时间拆开整个 Omniauth 和 Devise gems 并理解其中的每一行代码,也许你们中的一个人可以告诉我问题可能是什么。
【问题讨论】:
-
你试过/users/auth/facebook
-
是的,也不起作用。甚至没有一条路线存在
标签: ruby-on-rails ruby-on-rails-3 oauth devise omniauth