Tworzę API i aplikacja mobilna na Xamarin. Nie chcę potwierdzić numer telefonu, tak, jak muszę użyć Twilio lub innych dostawców SMS, zamiast tego chcę potwierdzić e-mail. W tym samym czasie nie chcę tworzyć token e-mail, który zostanie wysłany do użytkownika, powołując się dla depresji, tak jak API nie jest MVC i nie będzie miał żadnych widoków.
Zamiast tego chcę, aby użytkownik e-mail został wysłany 6-cyfrowy kod, a następnie stworzę punkt końcowy w API, gdzie użytkownik wysyła ten kod za pośrednictwem aplikacji mobilnej, aby potwierdzić e-mail. Na przykład:
var code = await _userManager.GenerateChangePhoneNumberTokenAsync(newUser, newUser.Email);
To tworzy kod, należy pamiętać, że przekazuję użytkownikom wiadomości e-mail, a nie numer telefonu. Ten kod teraz przesyłane do użytkownika w wiadomości e-mail, a użytkownik wprowadza go w aplikacji mobilnej. Następnie:
var confirmed = await _userManager.VerifyChangePhoneNumberTokenAsync(newUser, code, newUser.Email);
To potwierdza poprawność kodu. Wartość logiczna, uzyskana w wyniku tego, ja potem będę używać, aby zainstalować ręcznie EmailConfirmed
w bazie danych, aby true
To działa. Ale czy byłoby to do przyjęcia? Czy istnieje jakiś powód, dla którego nie powinienem tego robić?