使用omni +认证认证登录google_oauth2时遇到麻烦

时间:2019-02-02 07:30:03

标签: ruby-on-rails devise omniauth

我正在研究项目,我需要添加社交身份验证,因此我选择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调用失败方法。我不知道这是怎么回事,我想知道从昨天起我也用谷歌搜索,但没有好的东西来解决这个问题。

1 个答案:

答案 0 :(得分:0)

我已经解决了我的问题,实际上我已经创建了一个新的Google凭据(应用程序ID,密钥),但是忘记启用API。现在,我已经启用了Google API,并且Google身份验证工作正常。

Enable API