Столкнувшись с проблемой входа в систему с помощью google_oauth2, используя омни + принудительная аутентификация - PullRequest
0 голосов
/ 02 февраля 2019

Я работаю над проектом, и мне нужно добавить социальную аутентификацию, поэтому я выбираю omniauth + devise для аутентификации.Сначала я начал с аутентификации Facebook, которая работает нормально, после чего я использовал gem 'omniauth-facebook', '~> 4.0' для аутентификации Google и следую инструкциям из этой статьи , но она показывает 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 голосов
/ 04 февраля 2019

Я решил свою проблему, фактически я создал новые учетные данные Google (идентификатор приложения, секретный ключ), но забыл включить API.Теперь я включил Google API, и аутентификация Google работает нормально.

Включить API

...