我已经在这个问题上工作了 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
it simply says
ActionController::RoutingError (No route matches "/auth/facebook"):
/user/auth/facebook 也不起作用。
由于我很遗憾没有时间拆开整个 Omniauth 和 Devise gems 并理解其中的每一行代码,也许你们中的一个人可以告诉我问题可能是什么。