У меня есть работа с Facebook. Теперь я пытаюсь войти в систему с Google.Ошибка: redirect_uri_mismatch при использовании omniauth-google-oauth2
Я получаю сообщение об ошибке: redirect_uri_mismatch, и я не могу понять, почему.
Я видел, где кто-то сказал использовать omniauth-oauth2 v. 1.3.1, так что я.
Мои маршруты файл включает в себя:
gem 'omniauth-facebook'
gem 'omniauth-google-oauth2', '~> 0.4.1'
gem 'omniauth-oauth2', '~> 1.3.1'
Мой файл omniauth.rb является:
Rails.application.config.middleware.use OmniAuth::Builder do
provider :facebook, ENV['FACEBOOK_APP_ID'], ENV['FACEBOOK_SECRET'], info_fields: 'email,first_name,last_name'
provider :google_oauth2, ENV["GOOGLE_CLIENT_ID"], ENV["GOOGLE_CLIENT_SECRET"],
{
:name => "google",
:scope => "email, profile, plus.me, http://gdata.youtube.com",
:prompt => "select_account",
:image_aspect_ratio => "square",
:image_size => 50
}
end
Я принял сообщение об ошибке
The redirect URI in the request, http://localhost:3000/auth/google/callback, does not match the ones authorized for the OAuth client
и скопировал Ури, а затем перешел на страницу credientials для google api, а затем добавил этот точный uri как URI разрешенного перенаправления.
Любая помощь была бы принята с благодарностью.
Когда я делаю это, я получаю: нет маршрута матчей [не GET] "/ авт/google_oauth2" – atarihomestar
Мой routes.rb включает в себя: получить '/ авт /: провайдер/обратный вызов', чтобы : 'sessions # create_omniauth' – atarihomestar
С терминала я могу запустить «curl localhost: 3000/auth/google_oauth2/callback», и он находит этот маршрут. Но если я попробую его без/callback, это не так. Это похоже на то, что Google не отправляет обратно/обратный вызов. – atarihomestar