Ejemplo n.º 1
0
        public async Task <IActionResult> AskPasswordReset([FromBody] string email)
        {
            try
            {
                var user = await userService.GetUserByEmail(email);

                if (user == null)
                {
                    return(Ok("Письмо выслано на " + email));              //мера безопасности
                }
                var token = new PasswordResetToken(user.Id);
                await tokenService.AddPasswordResetTokenAsync(token);

                await new MailingService().SendEmailAsync(email,
                                                          "Восстановление пароля",
                                                          "Для восстановления пароля перейдите по ссылке: https://pr42.ru/re-regist?" + token.token + " (ссылка действительна 3 часа)");
                return(Ok("Письмо выслано на " + email));
            }
            catch (AppException ex)
            {
                return(BadRequest(new { message = ex.Message }));
            }
        }