今天早上,Omniauth和Devise在使用Facebook进行身份验证时开始失败了吗?

时间:2017-03-28 07:16:32

标签: ruby-on-rails devise facebook-login omniauth

一切都很好然后:

I, [2017-03-28T02:54:18.998055 #663]  INFO -- : Completed 200 OK in 39ms (Views: 14.3ms | ActiveRecord: 8.5ms)
I, [2017-03-28T02:54:26.225944 #663]  INFO -- : Started GET "/users/auth/facebook" for 176.109.217.212 at 2017-03-28 02:54:26 -0400
I, [2017-03-28T02:54:26.411915 #663]  INFO -- : Started GET "/users/auth/facebook/callback?code=CODE and STATE" for 176.109.217.212 at 2017-03-28 02:54:26 -0400
I, [2017-03-28T02:54:26.566419 #663]  INFO -- : Processing by Users::OmniauthCallbacksController#failure as HTML
I, [2017-03-28T02:54:26.566667 #663]  INFO -- :   Parameters: {"code"=>"CODE", "state"=>"STATE"}
I, [2017-03-28T02:54:26.567608 #663]  INFO -- : Redirected to https://example.com/users/sign_in

所有Facebook登录似乎都已关闭,但错误很难捕捉到。我向用户显示登录失败“凭证无效”,但这不是他们的错。我怎么能告诉他们facebook的责任呢。

1 个答案:

答案 0 :(得分:2)

Facebook昨晚进行了一次迁移。您必须使用omniauth-facebook> = 4.0.0版本才能再次使用(来源https://github.com/mkdynamic/omniauth-facebook/issues/278

使用gem 'omniauth-facebook', '4.0.0'更新您的Gemfile,然后运行bundle update,一切都应该恢复正常。