Проверьте, существует ли электронная почта в Firebase Auth в приложении Flutter - PullRequest
0 голосов
/ 21 февраля 2019

Я занимаюсь разработкой приложения Flutter и хочу использовать Firebase Auth для входа в систему.Моя проблема заключается в том, что я хочу сначала запросить письмо, проверить правильность формата, а затем отправить пользователя на экран входа в систему или экран входа в зависимости от того, существует ли письмо в Firebase.

Я прочиталэто вопрос , где говорится, что единственное решение - выполнить вход с помощью метода createUserWithEmailAndPassword() и проверить сообщение об ошибке, решение, которое в долгосрочной перспективе не очень надежно.

Какфлаттер развивается очень быстро, знаете ли вы, ребята, лучшее решение для этого?

Заранее спасибо!

Ответы [ 2 ]

0 голосов
/ 21 февраля 2019

Поскольку вы регистрируетесь, это означает, что в основном вы сохраняете данные пользователя, такие как имя профиля или что-то в этом роде.При регистрации нового пользователя сохраняйте электронную почту пользователя в firestore, если это первый раз.Затем в следующий раз запустите запрос о том, присутствует ли электронная почта в пожарном хранилище или нет, что подразумевает, прошел ли пользователь проверку подлинности или нет (впервые или уже созданная учетная запись).Если документ с соответствующим адресом электронной почты не найден, значит, пользователь является новым пользователем, вы можете войти в систему. Если документ найден с соответствующим адресом электронной почты, то войдите в систему, а не зарегистрируйтесь.

0 голосов
/ 21 февраля 2019

Я думаю, вы могли бы также создать облачную функцию для проверки на сервере, что было бы альтернативным методом.В вопросе было указано ограничение на выполнение проверки в приложении.

Что касается выполнения проверки с использованием сообщения об ошибке, которое уже исправлено, и теперь вы можете проверить его с помощью кода ошибки.(Я обновил свой ответ)

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