ConfirmEmailAsync() получает неверный токен, несмотря ни на чтоC#

Место общения программистов C#
Гость
ConfirmEmailAsync() получает неверный токен, несмотря ни на что

Сообщение Гость »

Я пытаюсь проверить токен подтверждения электронной почты для пользователя, но всегда получаю ошибку INVALID TOKEN, что бы я ни делал.
Мой код очень прост< /p>
Чтобы создать токен
EmailVerificationCode = await userManager.GenerateEmailConfirmationTokenAsync(user);
EmailVerificationHTMLFormatCode = HttpUtility.UrlEncode(EmailVerificationCode);

Для проверки токена
var result = await userManager.ConfirmEmailAsync(user, code);

Я всегда получаю ошибку INVALID TOKEN.
То, что я пробовал
< ol>
[*]Проверка сгенерированного токена и полученного токена для проверки путем помещения их в базу данных, они абсолютно одинаковы.
[*]Пробовал использовать HttpUtility.UrlDecode(Code) для декодирования токена на принимающей стороне
[*]Пытался просто использовать токен RAW без HttpUtility.UrlEncode для его проверки

Я также использовал следующие решения:
  • Asp.net 2.0 Identity, ConfirmEmailAsync() получает неверный токен
  • Неверный токен. при проверке кода подтверждения электронной почты с помощью UserManager.ConfirmEmailAsync(user.Id, code)
  • AspNet.Identit 2.1.0 ConfirmEmailAsync всегда возвращает неверный токен
  • Asp .NET Identity 2 выдает ошибку «Неверный токен».
Что бы я ни делал, это всегда неверный токен, и я ясно вижу, что токен равен 100. % правильных ответов.
Есть идеи, что я делаю не так?
Изменить. Если это поможет, мой файл Startup.cs имеет следующие конфигурации удостоверений
// For Identity
services.AddIdentity(o =>
{
// configure identity options
o.Password.RequireDigit = false;
o.Password.RequireLowercase = false;
o.Password.RequireUppercase = false;
o.Password.RequireNonAlphanumeric = false;
o.Password.RequiredLength = 6;
})
.AddEntityFrameworkStores()
.AddDefaultTokenProviders();


Источник: https://stackoverflow.com/questions/679 ... atter-what

Вернуться в «C#»