我使用表单身份验证在生产中运行ASP.Net MVC Web应用程序。每隔一段时间,当用户尝试登录时,我会收到以下错误:
System.Web.Mvc.HttpAntiForgeryException(0x80004005):防伪 cookie令牌和表单域令牌不匹配。在 System.Web.Helpers.AntiXsrf.TokenValidator.ValidateTokens(HttpContextBase httpContext,IIdentity身份,AntiForgeryToken sessionToken, AntiForgeryToken fieldToken)在 System.Web.Helpers.AntiXsrf.AntiForgeryWorker.Validate(HttpContextBase httpContext) System.Web.Mvc.ControllerActionInvoker.InvokeAuthorizationFilters(ControllerContext controllerContext,IList`1过滤器,ActionDescriptor actionDescriptor) 在 System.Web.Mvc.Async.AsyncControllerActionInvoker<> c__DisplayClass21.b__19(的AsyncCallback asyncCallback,Object asyncState)
用户尝试了几次,然后关闭浏览器并导航回应用程序并尝试再次登录,然后就可以了。
我一直在尝试,但我无法复制这个问题,以便我可以深入了解它。我想也许用户正在为登录屏幕添加书签,并且浏览器以某种方式缓存了一个旧的"带有该书签的令牌。但我也尝试过这种方法,导航到书签登录屏幕在我们的测试中运行良好。
我发现了一些可能导致问题消失的问题,但如果我无法在开发中复制问题,我就无法知道任何建议的修复工作。< / p>
关于根本原因可能让我尝试复制的任何想法?