почему я продолжаю получать неверный URL-адрес при попытке сгенерировать пароль для сброса?

#c# #passwords #token #usermanager

Вопрос:

У меня возникли проблемы с недопустимым URL-адресом при создании URL-адреса для сброса пароля. Я думаю, что это может быть проблема с длиной, но я не уверен, как в любом случае уменьшить длину сгенерированного токена…

Вот как я генерирую токен пароля.

 var token = await _userManager.GeneratePasswordResetTokenAsync(user);   var encodedToken = Encoding.UTF8.GetBytes(token);   var validToken = WebEncoders.Base64UrlEncode(encodedToken);  

Это должно сделать токен безопасным для прохождения по URL-адресу, а затем, когда он будет отправлен, я расшифрую его, а затем разрешу сбросить пароль.

Проблема в том, что, когда ссылка отправляется пользователю, он нажимает на эту ссылку, а затем она показывает ошибку 400 недействительных URL-адресов. Я удалил около 50 символов из токена, а затем внезапно он возвращает страницу сброса пароля.

Могу ли я что-нибудь попробовать, кроме как сгенерировать более короткий токен?

Спасибо!