我正在研究项目,我需要添加社交身份验证,因此我选择omniauth + devise进行身份验证。首先,我从Facebook身份验证开始,在我使用gem 'omniauth-facebook', '~> 4.0'
进行Google身份验证之后,它工作正常,并按照此article的指示进行操作,但其显示为There was a problem signing you in. Please register or try signing in later.
摘自OmniauthController
def google_oauth2
@user = User.create_from_google_data(request.env['omniauth.auth'])
if @user.persisted?
sign_in_and_redirect @user
set_flash_message(:notice, :success, kind: 'Google') if is_navigational_format?
else
flash[:error] = 'There was a problem signing you in through Google. Please register or try signing in later.'
redirect_to new_user_registration_url
end
end
def failure
flash[:error] = 'There was a problem signing you in. Please register or try signing in later.'
redirect_to new_user_registration_url
end
它从OmniauthController
调用失败方法。我不知道这是怎么回事,我想知道从昨天起我也用谷歌搜索,但没有好的东西来解决这个问题。
答案 0 :(得分:0)
我已经解决了我的问题,实际上我已经创建了一个新的Google凭据(应用程序ID,密钥),但是忘记启用API。现在,我已经启用了Google API,并且Google身份验证工作正常。
Enable API