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.现在为了根本原因,这通常是因为 >你在一个网络农场场景中,你的各种服务器没有一样的方式(但是你说的不是这样) 这听起来很熟悉吗? (编辑:4S站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – ASP MVC – 默认的HTTP标头有任何常量吗?
- Asp.net mvc验证用户登录之Forms实现详解
- asp.net html控件的File控件实现多文件上传实例分享
- asp.net-mvc – 类库中的控制器和视图
- ASP.NET(C#)应用程序配置文件app.config/web.config的增、删
- ASP.NET通过分布式Session提升性能
- asp.net后台cs中的JSON格式变量在前台Js中调用方法(前后台示
- asp.net+Ajax 文本文件静态分页实现代码
- asp.net-mvc – 图像URL中的符号MVC导致一个潜在危险的Requ
- asp.net – NHibernate – ManagedWebSessionContext和WebS