Я ввел Google oauth, используя omniauth-google-oauth2
gem. Это работает, когда я пытаюсь войти в систему с адресом Gmail через браузер, но если я пытаюсь выставить его как конечную точку API, выдается следующая ошибка:
Started GET "/ api / v1 / swagger_do c . json "для :: 1 в 2020-04-23 09:01:07 +0530 запущен POST" / api / v1 / users / google_oauth2_signin "для :: 1 в 2020-04-23 09:01:25 + 0530 Запущено GET "/users/auth/google_oauth2/callback?email=a***h***@*****.com" для :: 1 в 2020-04-23 09:01:25 +0530 I , [2020-04-23T09: 01: 25.798091 # 49340] INFO - omniauth: (google_oauth2) Инициирована фаза обратного вызова. E, [2020-04-23T09: 01: 25.798853 # 49340] ОШИБКА - omniauth: (google_oauth2) Ошибка аутентификации! csrf_detected: OmniAuth :: Strategies :: OAuth2 :: CallbackError, csrf_detected | CSRF обнаружил ошибку обработки пользователями :: OmniauthController # как JSON Параметры: {"email" => "a *** h *** @ *****. Com"}
Моя конечная точка API код такой, как показано ниже:
post "google_oauth2_signin" do
redirect "/users/auth/google_oauth2/callback?#{params.to_query}"
end
Может кто-нибудь подсказать мне, где я ошибаюсь? Я выполнил все необходимые предварительные настройки как для клиента google, так и для google secret внутри моего devise.rb
файла инициализатора.