Я создаю API http://localhost:3001/api/v1/user/google для входа в Google. Конечная точка API и клиентское приложение выполняют следующие действия.
http://localhost:3001/api/v1/user/googlehttp://localhost:3001/api/v1/user/google сначала генерирует URI перенаправления, а затем перенаправляет пользователя на страницу входа в GoogleНо проблема в следующем:
когда пользователь нажимает на ссылку, он переводит пользователя на страницу входа в Google, но после этого он не возвращается в мое клиентское приложение. он останется на странице http://localhost:3001/api/v1/user/google. как я могу решить проблему. мне нужно показать эти данные json в моем клиентском приложении.
Код APIhttps://gist.github.com/kousherAlam/35b89af266cd156ed129c92532066d97
Какой у вас набор redirectUri? Также вам не нужен Backend для входа в Google Oauth, вы можете сделать это просто с помощью плагина, я очень часто работаю с этим: npmjs.com/package/angular-6-социальный вход
@MichaelB привет, майкл, URI перенаправления автоматически генерируется для входа в Google.. Точнее, это URI второго скриншота. В моем случае мне нужен бэкэнд для Google, потому что ему нужен не только логин, но и разрешение пользователя для выполнения какой-либо другой задачи для Пользователь. Мне просто интересно, как Google переводит пользователя на другую вкладку, когда он нажимает login with google, и после входа в систему переводит пользователя на предыдущую вкладку со статусом входа.
привет @nircraft в вашем решении они используют плагин, в моем случае я просто хочу знать технику плагина. Есть ли у вас какие-либо идеи ?
@kousheralampranto это будет то, для чего предназначен redirectUri, настроен ли он в настоящее время так, чтобы вы хотели использовать данные для входа? (фронтенд)? вам также необходимо указать redirectUri вместе с запросом на вход + добавить его в белый список на панели инструментов Google API.
@MichaelB, извините, я не понимаю вашей точки зрения.
вокруг строки 25-26 этого примера вы должны указать, поскольку вы предоставляете «области» свойства, называемого «redirectUri», где вы указываете, куда вы хотите, чтобы Google перенаправлял пользователя после входа в систему. В качестве дополнительного шага для обеспечения безопасности и других вещей вам необходимо зарегистрировать / добавить в белый список Google эту опцию «redirectUri», пример из приложения, которое у меня есть на панели инструментов Google API: i.imgur.com/dpiagQI.png
Эй, @MichaelB, большое спасибо, это был последний недостающий элемент. Теперь мой рабочий процесс таков: сначала пользователь щелкает ссылку, которая ведет пользователя на страницу входа в Google, затем Google отправляет пользователя в клиентское приложение с кодом, затем я запрашиваю другой маршрут с кодом, который отвечает за код обмена с токеном, а затем отправляю обратно данные пользователя.
так это работает? ура!
да получилось братан.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Примерно в строке 25-26 примера кода, который вы разместили в комментариях, вы должны предоставить, поскольку вы предоставляете свойство «scopes», другое свойство, называемое «redirectUri».
Здесь вы указываете, куда вы хотите, чтобы Google перенаправлял пользователя после входа в систему.
В качестве дополнительного шага по соображениям безопасности и, возможно, по некоторым другим причинам вы должны зарегистрировать/внести в белый список Google эту опцию «redirectUri», вот скриншот того, как выглядит этот интерфейс, взятую из приложения, которое у меня есть внутри Панель инструментов API Google.
Это может помочь: codinglatte.com/amp/posts/angular/sign-in-with-google-angular