asp.net - "Potentially Dangerous Request.Form"通用处理程序中的异常

标签 asp.net validation ashx generic-handler dangerous-request

我以前见过这个错误,但似乎无法解决它。在这种情况下,我有一个 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 请求验证,所以我只会在攻击面相对较小的情况下这样做。

关于asp.net - "Potentially Dangerous Request.Form"通用处理程序中的异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5187169/

相关文章:

javascript - 使用通用处理程序异步上传文件

c# - 在代码隐藏中设置 HTML 标签可见和不可见的最佳方法是什么?

javascript - 使 dijit.form.currencytextbox 接受小数点后一位数字的负值

javascript - 提交后验证效果不佳

jquery - 这两个 jquery 验证插件文件有什么区别

c# - Valums Ajax 上传 w/C# ashx 返回 'Index was out of range. Must be non-negative and less than the size of the collection.' 错误

c# - 仅在下载后计算一次下载

c# - ASP.NET 中 C# 的人脸检测

asp.net - 自承载 WCF 服务中的 Autofac 对象生命周期范围

c# - Size 属性的大小无效,为 0