разрешить пользователю выбирать, к какому электронному письму регистрироваться при использовании angular регистрации в firebase через Google - PullRequest
0 голосов
/ 20 апреля 2020

Я реализовал Angular с помощью Firebase, зарегистрировался в Google.

var result = await this.afAuth.auth.signInWithPopup(
      new auth.GoogleAuthProvider()
);

Когда я использую Google Chrome, и я вошел в более чем одну из моих учетных записей Gmail, когда я захожу на веб-сайт, и я нажимаю кнопку «Зарегистрироваться через Google», она открывает всплывающую страницу Google, и я выбираю, какое письмо я хочу зарегистрировать на своем веб-сайте. Никаких проблем с этим.

Google Popup page

Но если я захожу только в 1 аккаунт Gmail в Google Chrome, когда я захожу на свой веб-сайт и Я нажимаю кнопку «Зарегистрироваться с помощью Google», она не открывает всплывающую страницу Google, вместо этого она напрямую регистрирует адрес электронной почты, уже зарегистрированный в Google Chrome. По умолчанию Google Chrome считает, что, поскольку это единственное зарегистрированное письмо, давайте сделаем так, чтобы он подписывался на это письмо.

Я хочу, чтобы в любое время пользователь нажимал на мой сайт. с помощью кнопки Google, чтобы открыть всплывающую страницу Google и позволить им выбрать, с каким адресом электронной почты он / она хочет зарегистрироваться на моем веб-сайте.

1 Ответ

0 голосов
/ 20 апреля 2020

Мы можем сделать это, добавив следующий пользовательский параметр в провайдер:

const provider = new firebase.auth.GoogleAuthProvider();
provider.setCustomParameters({ prompt: 'select_account' });

Вот хорошее объяснение: Firebase - Что это значит для установки пользовательских параметров провайдеру?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...