как узнать, был ли телефонный номер уже связан с учетной записью пароля в firebase web до отправки OTP пользователю - PullRequest
0 голосов
/ 08 июля 2019

Я создаю ионное приложение с аутентификацией Firebase. Я предоставил функцию «логин на Facebook» и функцию аутентификации по паролю. Когда пользователь пытается войти через две вышеупомянутые функции, я хочу, чтобы он связал свой номер телефона со своей учетной записью для аутентификации в Facebook или паролем. Я реализовал функцию связывания номера телефона с их учетной записью.

Мое требование здесь: я хочу проверить, связан ли номер телефона, который они пытаются связать, каким-либо другим пользователем в Firebase User или нет. Если нет, я позволю им ссылаться, иначе я не буду. Кроме того, я хочу получить этот результат перед отправкой пользователю OTP.

this.confirmationResult = this.auth.userCredential.user. linkWithPhoneNumber (this.phoneNumber, this.appVerifier);

Я полагаю, что приведенный выше код должен вернуть ошибку, если номер телефона уже связан с какой-либо другой учетной записью. Но он позволяет отправить OTP на номер телефона пользователя, а затем предлагает мне ввести код, отправленный на номер телефона. Кроме того, я могу получить код ошибки после проверки OTP, как «Авториз / учетные данные уже в использовании». Я хочу это до того, как код будет отправлен на номер телефона пользователя. Пожалуйста, помогите мне достичь этого сценария.

1 Ответ

0 голосов
/ 09 июля 2019

Вы можете использовать Firebase Admin SDK для поиска независимо от того, существует ли уже пользователь с номером телефона.

Вот пример с Node.js

admin.auth().getUserByPhoneNumber(phoneNumber)
  .then(function(userRecord) {
    // A user with the phone number already exists.
    // You can also get other information related to the user from the
    // userRecord.
  })
  .catch(function(error) {
    console.log('Error fetching user data:', error);
  });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...