ValidateRequest问题
2024-08-24 14:20:57
1,在出现该错误的页面头部的page中加入ValidateRequest="false",那么该页面的任何一次Post提交都不会再验证提交内容的安全性。
如:
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Manage/ViewMasterPageEdit.Master" Inherits="System.Web.Mvc.ViewPage<MvcWebPhoto.Models.Entities.Article >"
ValidateRequest="false" % >
2,在web.config中的pages节中配置validateRequest="false",如:
<system.web >
<pages validateRequest="false" ></pages >
</system.web >
<pages validateRequest="false" ></pages >
</system.web >
但这样,整个项目中的所有Form请求都不再验证提交内容的安全性,极不提倡这种做法。
3,如果你使用的是.Net 3.5,MVC 2.0及更高的版本,那么可以在处理Post方法的Action添加一个特性:[ValidateInput(false)],这样处理就更加有针对性,提高页面的安全性。
如:
[HttpPost]
[ValidateInput(false)]
public ActionResult CatalogEdit(Catalog model)
{
return View();
}
[ValidateInput(false)]
public ActionResult CatalogEdit(Catalog model)
{
return View();
}
重要:
如果你使用的是MVC 3.0,那么你会发现做了以上的设置后还是无效。这是因为你还需要在web.config中做以下设置:
<system.web >
<httpRuntime requestValidationMode="2.0" / >
</system.web >
<httpRuntime requestValidationMode="2.0" / >
</system.web >
注意:在MVC项目中,Views文件夹下与主项目下,都会有一个web.config文件。Views下的web.config文件只对Views文件夹下面的文件有效。如果你要处理的页面不在Views下面,那么<httpRuntime requestValidationMode="2.0" / >一定要设置在主项目下的web.config中才有用。
最新文章
- .edmx 文件概述(实体框架)
- LintCode Find Minimum In Rotated Sorted Array
- 深入理解PHP内核(九)变量及数据类型-静态变量
- Python进程、线程
- Spring AOP 简单理解
- 【转载】C++异常机制的学习
- 安装VMware-tools的问题
- ios之UITableViewController(二) tableView的编辑模式
- 一次搞定cocos2d-x的 Android.mk 文件
- 关于socket的关闭:close和shutdown
- Code::Blocks项目配置基础
- angular.js简介
- ES6中Promise对象个人理解
- Numpy系列(三)- 基本运算操作
- centso7 安装redmine
- 4S店的潜规则内幕曝光
- Windows如何安装Android SDK
- springboot aop+@interface实现日志记录
- README.md 编写
- 曾经的UCOSii