取消ASP.NET中的请求验证(Disabling Request Validation)部分转载Entlib.Net

       在ASP.NET Application 开发过程中,在web page 页面的文本框输入 HTML 代码时,会出现如下异常信息:

       从客户端(txtProductName=”…….. <font color=’red’><b…”)中检测到有潜在危险的 Request.Form 值。

       说明: ASP.NET 在请求中检测到包含潜在危险的数据,因为它可能包括 HTML 标记或脚本。该数据可能表示存在危及应用程序安全的尝试,如跨站点脚本攻击。如果此类型的输入适用于您的应用程序,则可包括明确允许的网页中的代码。有关详细信息,请参阅 http://go.microsoft.com/fwlink/?LinkID=212874。

       异常详细信息: System.Web.HttpRequestValidationException: 从客户端(txtProductName=”… <font color=’red’><b…”)中检测到有潜在危险的 Request.Form 值。

解决办法:

       上述异常时因为ASP.NET增加了一个新特性:Request Validation(请求验证),检查HTTP 请求中是否包含一些潜在的威胁内容。潜在的危险内容指的是在请求的body、header、Query string或者 Cookies 中的任何 HTML 脚本或者JavaScript 代码。ASP.NET 执行这一检查是因为上述内容可能添加一些恶意的代码。

        但是,如果在公司内部的intranet 环境部署的Application,则可以取消这一验证。

        具体参考如下文章:Request Validation in ASP.NET

        该文章提供了在ASP.NET Web Forms、ASP.NET MVC 和 ASP.NET Web Pages 三种方式来取消请求验证(disable request validation)。

------------------------------------------------------------------------------------------------------

以上部分转载自http://www.entlib.net/?p=2149 

感谢Entlib.net团队的分享。

-------------------------------------------------------------------------------------------------------

        之所以转载这一片文章,是我在页面富文本混合输入时,遇到了相同的问题,根据原博客的参考文件,解决了这一问题。

以下做一些简要的摘录翻译Request Validation in ASP.NET中的解决方法。

-------------------------------------------------------------------------------------------------------

第一种方法,设置httpRuntime元素的requestValidationMode属性为"2.0"。例:

XML

<system.web>
  <httpRuntime requestValidationMode="2.0" />
</system.web>


第二种方法,设置validationRequestfalse。例:

XML

<configuration>
  <system.web>
    <pages validateRequest="false" />
  </system.web>
</configuration>

第三种方法,在一个独立页面中,可以对页面的指令做设置,在@Page中设置validationRequestfalse。例:

HTML

<@ Page validateRequest="false" %>




By  Wander.Zh

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值