親愛的人精:omniauth谷歌-的oauth2用色器件 - invalid_credentials和 「CSRF檢測」 的SO
我開發on Rails的3.2.12一個Ruby應用程序(和我還是新手的話)。
我想讓Devise與Omniauth合作......我嘗試的第一個策略是Google_oauth2。
我選擇我要在Google中使用的憑據後,Google已將其重定向回本地主機:3000實例。
在這種重定向返回到本地主機,我看到了閃光的通知:
Could not authenticate you from GoogleOauth2 because "Csrf detected".
服務器日誌中包含的:
Started GET "https://stackoverflow.com/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 "https://stackoverflow.com/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中的相同錯誤的解決方案? http://stackoverflow.com/questions/42290769/gitlab-could-not-authenticate-you-from-googleoauth2-because-csrf-detected-erro – 2017-02-17 06:25:26