【发布时间】:2013-03-21 13:40:53
【问题描述】:
尊敬的 SO 的好人:
我正在 Rails 3.2.12 上开发一个 Ruby 应用程序(我还是新手)。
我正在尝试让 Devise 与 Omniauth 合作...我尝试的第一个策略是 Google_oauth2。
在选择我想在 Google 中使用的凭据后,Google 已将其重定向回我的 localhost:3000 实例。
在重定向回 localhost 后,我看到了一个快速通知:
Could not authenticate you from GoogleOauth2 because "Csrf detected".
服务器日志包含以下内容:
Started GET "/users/auth/google_oauth2" for 127.0.0.1 at 2013-03-21 08:57:01 -0400
(google_oauth2) Callback phase initiated.
(google_oauth2) Callback phase initiated.
(google_oauth2) Authentication failure! invalid_credentials: OmniAuth::Strategie
s::OAuth2::CallbackError, OmniAuth::Strategies::OAuth2::CallbackError
Started GET "/users/auth/google_oauth2/callback?state=7849a3762d07e7f89e69b4aa46
7efc7b7b2c21655193396b&code=4/v-dSBwAvQUUZL87iNV_yk_Z8s_x0.cnqsdbDX4gUYaDn_6y0ZQ
NgQ9hAaewI" for 127.0.0.1 at 2013-03-21 08:57:40 -0400
Processing by OmniauthCallbacksController#failure as HTML
Parameters: {"state"=>"7849a3762d07e7f89e69b4aa467efc7b7b2c21655193396b", "cod
e"=>"4/v-dSBwAvQUUZL87iNV_yk_Z8s_x0.cnqsdbDX4gUYaDn_6y0ZQNgQ9hAaewI"}
Redirected to http://localhost:3000/users/sign_in
Completed 302 Found in 0ms (ActiveRecord: 0.0ms)
我注意到,如果我只是将回调 URL 直接放入浏览器,而不提供任何参数,我会得到完全相同的结果。
http://localhost:3000/users/auth/google_oauth2/callback
我可以尝试什么?我还能提供哪些其他信息?
【问题讨论】:
-
GitLab 中相同错误的任何解决方案? stackoverflow.com/questions/42290769/…
标签: devise ruby-on-rails-3.2 omniauth google-oauth