asp.net-mvc – MVC应用程序调试错误:viewstate MAC的验证失败
从现在开始,我第一次在开始调试我的MVC应用程序时收到这个错误
全堆栈跟踪 [ViewStateException: Invalid viewstate. Client IP: 127.0.0.1 Port: Referer: Path: /Login/LogOn User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US) AppleWebKit/534.7 (KHTML,like Gecko) Chrome/7.0.517.41 Safari/534.7 ViewState: Fvq7WNUu+qCC00VbTIOTUuBvK4YHjxp3RubwsrFYW93hKlF7I4GLzaNHceRqjjJB0GwvRPWwlwE6brhAZAo+Mp191B/C+l8Dw/w7aQBDCpWGC3ox6hkSeZp10vbjm9eJFQZmGSPyC1rKYwApBBaz0Q==] [HttpException (0x80004005): Validation of viewstate MAC failed. If this application is hosted by a Web Farm or cluster,ensure that <machineKey> configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster.] System.Web.UI.ViewStateException.ThrowError(Exception inner,String persistedState,String errorPageMessage,Boolean macValidationError) +198 System.Web.UI.ViewStateException.ThrowMacValidationError(Exception inner,String persistedState) +14 System.Web.UI.ObjectStateFormatter.Deserialize(String inputString) +274 System.Web.UI.ObjectStateFormatter.System.Web.UI.IStateFormatter.Deserialize(String serializedState) +4 System.Web.Mvc.AntiForgeryDataSerializer.Deserialize(String serializedToken) +176 这是什么意思? 请注意:错误仅在调试期间发生.当我在本地IIS部署应用程序时,一切正常.它显示在我的母版页面的以下代码中 <form id="__AjaxAntiForgeryForm" action="#" method="post"> <%= Html.AntiForgeryToken() %> </form> 解决方法发生这种情况的直接原因是因为防伪cookie无效.关闭并重新打开浏览器应该可以解决问题.您也可以尝试删除与测试站点相关联的cookie.现在为了根本原因,这通常是因为 >你在一个网络农场场景中,你的各种服务器没有一样的方式(但是你说的不是这样) 这听起来很熟悉吗? (编辑:哈尔滨站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net核心 – 如何排除在ASP.NET Core中发布文件?
- asp.net – WebForms:MasterPages中的动态(或绝对)脚本标记
- asp.net-web-api – Web Api:找不到System.Net.Http版本2.
- 经典ASP和UTF-8
- asp.net-core – .NET Core SDK安装程序无法在Windows 2012
- ASP.NET 程序中删除文件夹导致session失效问题的解决办法分
- ASP.NET对大文件上传的解决方案
- asp.net-mvc – 在ASP.NET MVC中实现工作单元的方法
- ASP.NET Core中实现用户登录验证的最低配置示例代码
- asp.net-mvc – AntiXss保护Html模型属性