客户端向服务端传送特殊字符解决方法(检测到有潜在危险的 Request.Form 值)

当客户端向服务端传输特殊字符时报错,错误信息如下图:

在asp.net中Request提交时出现有html代码或javascript等字符串时,程序系统会认为其具有潜在危险的值。环境配置会报出“从客户端 中检测到有潜在危险的Request.Form值”这样的错误。出现这种错误是因为你提交的Form中有HTML字符串,例如你在TextBox中输入了html标签,或者在页面中使用了HtmlEditor组件等,解决办法是禁用validateRequest。

解决办法:(如果你程序版本是.net framework4.0或更高版本,一定要看方法三)

方法一、在.aspx文件头中加入一个属性(此方法asp.net webForm和asp.net MVC中均适用):

           <%Page Language="C#" validateRequest="false" %>

方法二、修改web.config文件: (此方法不建议、不安全)

      <configuration>
         <system.web>
             <pages validateRequest="false" />
         </system.web>
      </configuration>
因为validateRequest默认值为true。只要设为false即可。

方法三、Web.config文件里面加上:
<system.web>
<httpRuntime requestValidationMode="2.0" />
</system.web>


posted @ 2016-01-12 13:29  赛跑的蜗牛  阅读(394)  评论(0编辑  收藏  举报