requestValidationMode=“2.0”表示什么意思

requestValidationMode=“2.0”表示什么意思

requestValidationMode=“2.0”表示什么意思


requestValidationMode 有两个值:
1.2.0 仅对网页启用请求验证。是启用还是关闭取决于 validateRequest。

2.4.0 默认值。任何 HTTP 请求都会启用请求验证,也就是说不光是网页,还包括 Cookie 等。此时强制启用,不管 validateRequest 为何值。

3.由于 requestValidationMode=“4.0“ 是强制启用,所以我们会发现在 .NET Framework 4.0 中仅靠设置 validateRequest 是关闭不了请求验证的,还得将 requestValidationMode 设置为 2.0。
ASP.NET中的请求验证特性提供了某一等级的保护措施防止XSS攻击,之前版本的ASP.NET的请求验证是默认启动的,但是他仅仅应用于ASP.NET页面中(.aspx文件和.aspx.cs文件。

如果以上回答没有解决你的问题请看下面回答:

2.0的意思就是说是以前旧版本的升级版,有过之无不及的意思


pages validateRequest=“false“和pages validateRequest=“TRUE“


pages validateRequest=“false“和pages validateRequest=“TRUE“这两句是对取得的数据值进行逻辑判断:当为false(假)时会执行此条件下的程序,当为true(真)时,会运行该条件下程序。【你的采纳是以我最好的鼓励!】

validateRequest=“false“在一般处理程序里怎么解决


form id=“form1“ name=“form1“》
《input type=“file“ name=“fileToUpload“ id=“fileToUpload“ multiple=“multiple“/》
《progress id=“progressBar“ value=“0“ max=“100“》《/progress》
《span id=“percentage“》《/span》
《input type=“button“ onclick=“UpladFile()“ value=“Upload“ /》
《/form》
《script type=“text/javascript“》
$(document).ready(function () {
$(’#form1’).submit(function () {
var formdata = new FormData();
var fileObj = document.getElementById(“fileToUpload2“).files;
for (var i = 0; i 《 fileObj.length; i++)
formdata.append(“file“ + i, fileObj[i]);
$.ajax({
type: ’POST’,
url: ’/Home/Upload2’,
data: formdata,
/**
*必须false才会自动加上正确的Content-Type
*/
contentType: false,
/**
* 必须false才会避开jQuery对 formdata 的默认处理
* XMLHttpRequest会对 formdata 进行正确的处理
*/
processData: false
}).then(function () {
alert(’done’);
}, function () {
//failCal
});
return false;
});
});
function ajaxUpload() {
$(“#form1“).submit();
}
《/script》

如何关闭.net framework4.0的请求验证


《system.web》
《compilation debug=“true“ targetFramework=“4.0“/》

ASP.NET 在请求中检测到包含潜在危险的数据,因为它可能包括 HTML 标记或脚本.


解决办法:
方法一、修改.aspx文件
在.aspx文件中加入validateRequest=“false“,形如:
《%@
Page validateRequest=“false“ language=“c#“
Codebehind=“WriteNews.aspx.cs“ AutoEventWireup=“false“
Inherits=“News.WriteNews“ %》
方法二、配置web.config文件
《?xml version=“1.0“ encoding=“utf-8“ ?》
《configuration》
《system.web》
《!-- WriteNews.aspx使用内容编辑框时必须添加该语句,否则无法 Request值
--》
《pages validateRequest=“false“/》
《/system.web》
《/configuration》
推荐使用方法一。

validateRequest=“false“ 有什么危害


这是ASP.Net提供的一个很重要的安全特性,因为很多程序员对安全没有概念,甚至都不知道XSS这种攻击的存在,知道主动去防护的就更少了,ASP.Net在这一点上做到默认安全,这样让对安全不是很了解的程序员依旧可以写出有一定安全防护能力的网站。
  防范办法是:
  在页面级别(aspx中)设置ValidateRequest=“false“
  或者
  在全局级别(Web.config中)设置
  
  
  
  以上设置仅对ASP.NET4.0以下有效,在ASP.NET4.0版本上,在全局级别(Web.config中)设置:
  
  
  

c# .net 发送ajax 请求时 遇到 从客户端 xxx中检测到有潜在危险的 Request.Form 值,怎么处理.


《system.web》 
      《httpRuntime requestValidationMode=“2.0“/》
      《pages validaterequest=”false”/》
《/system.web》

从客户端(Content=“

测试

“)中检测到有潜在危险的 Request.Form 值


解决方法如下:

方法一:

修改Web.Config文件:    
《configuration》
《system.web》
《pages   validateRequest=“false“   /》
《/system.web》    
《/configuration》

方法二:

在.aspx页面中添加:    
《%@   Page   validateRequest=“false“   %》

注意:此属性在 .NET Framework 2.0 版中是新增的。

扩展资料:

MVC 编程模式

MVC 模式同时提供了对 HTML、CSS 和 JavaScript 的完全控制。

Model(模型)是应用程序中用于处理应用程序数据逻辑的部分,通常模型对象负责在数据库中存取数据。

View(视图)是应用程序中处理数据显示的部分,通常视图是依据模型数据创建的。

Controller(控制器)是应用程序中处理用户交互的部分。通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。

MVC 分层有助于管理复杂的应用程序,因为您可以在一个时间内专门关注一个方面。例如,您可以在不依赖业务逻辑的情况下专注于视图设计。同时也让应用程序的测试更加容易。

MVC 分层同时也简化了分组开发。不同的开发人员可同时开发视图、控制器逻辑和业务逻辑。

参考资料来源:百度百科-MVC


推荐阅读