"Invalid token." 在 ASP.NET Web API 中验证 UserManager 的 ResetPassport 和 ConfirmEmail 方法期间

"Invalid token." during Verifying ResetPassport and ConfirmEmail Methods of UserManager in ASP.NET Web API

我制作了获取重置令牌并在单一路线中重置护照的方法,它适用于单一路线,如下所示:

[HttpGet("ResetPassword")]
        [AllowAnonymous]
        public async Task<IActionResult> ResetPassword(string userId)
        {
          var Password = "Random@123";
          var user = await _userManager.FindByIdAsync(userId);
          var token = await _userManager.GeneratePasswordResetTokenAsync(user);
          var resetStatus = await _userManager.ResetPasswordAsync(user, token, Password);
        }

但是如果我将 GeneratePasswordResetTokenAsync 和 ResetPasswordAsync 分开到不同的路由中,我会收到无效令牌的错误 我尝试使用 URL 编码和所有其他可用的解决方案,但它没有用 我还实现了自定义令牌处理程序正如 Custom Token Handler 所建议的那样。但是得到同样的错误。

我解决了。 是数据库造成的。我用一个新的数据库和一个新的迁移脚本配置了它,它现在可以工作了。