A potentially dangerous Request.Form value was detected from the client

        我的报错页面:

       原因:在提交之前的一个页面用到span+contendeditable属性,当输入enter时增加<p>标签,所以用如下方式解决:

if (event.keyCode == 13)
  {
   var textRange = document.selection.createRange();
   textRange.text = "\r\n";
   textRange.select();
   event.returnValue = false;
  } 

      但是,当输入回车时,再取text属性时去掉了回车符,用html属性取值时,多了<br>的style属性,就是style属性中的内容被检测到风险报错。

      报错原因:用户在页面上提交表单到服务器时,服务器会检测到一些潜在的输入风险,例如使用富文本编辑器控件(RichTextBox、FreeTextBox、CuteEditor等)编辑的内容中包含有HTML标记或脚本标记,ASP.NET页面会抛出一个"A potentially dangerous Request.Form value was deceted from the client"的异常。这个是ASP.NET页面为了防范页面注入功能的一种保护机制,要取消这种保护,常规的做法是在.aspx文件的<%@Page %>部分加入ValidateRequest="false"属性。但是从.NET 4.0开始你可能需要多修改一个地方,在网站的web.config文件中加入这行配置[Path就是你要提交的页面的路径]:

	<location path="Include/CrimeMapping/Chart/CrimeAnalysis_ThematicMapFrame.aspx">
		<system.web>
			<compilation debug="true" targetFramework="4.0"/>
			<httpRuntime requestValidationMode="2.0"/>
		</system.web>
	</location>

      同时,你还需要确保页面上用户输入的部分不会存在任何注入攻击的代码,常用的做法是使用Encode处理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值