当前位置 : 主页 > 网络编程 > ASP >

asp.net – “可能危险的Request.Form”在通用处理程序中的异常

来源:互联网 收集:自由互联 发布时间:2021-06-24
我以前见过这个错误,但似乎无法绕过它.在这种情况下,我有一个ASHX页面吐出一个简单的 HTML表单,其中包含可以发布 XML的文本框.当我尝试阅读表单时,我收到“有潜在危险的Request.Form值…
我以前见过这个错误,但似乎无法绕过它.在这种情况下,我有一个ASHX页面吐出一个简单的 HTML表单,其中包含可以发布 XML的文本框.当我尝试阅读表单时,我收到“有潜在危险的Request.Form值……”.

由于它是通用处理程序,因此“ValidateRequest”属性不可用.但是我已经在web.config中定义了这个:

<location path="xml/MyGenericHandler.ashx">
    <system.web>
      <pages validateRequest="false" />
    </system.web>
</location>

这个片段早于从.NET 3.5迁移到4.0,所以我猜这是破坏的起源.

知道如何解决ASHX页面的这个错误吗?

剪辑你的3.5-4.0更改是为ASP.NET 4.0加强了运行时安全功能.快速解决方法是应用以下属性:

<httpRuntime requestValidationMode="2.0" />

不幸的是,这会打开所有页面,最多可以进行2.0请求验证,所以如果你有一个相对较小的攻击面,我只会这样做.

网友评论