【发布时间】:2017-01-13 13:00:06
【问题描述】:
我有一个方法可以将所有 HttpRequest 参数(标头、查询、输入等)转换为字符串
但即使我将[ValidateInput(false)] 添加到控制器
我仍然从下面的方法中抛出异常,
我只需要字符串形式的httprequest,没有危险的动作将对象转换为字符串
我需要禁用此控件,它会阻止我采用字符串形式的请求对象。
我怎样才能做到这一点
谢谢
private static void WriteHeaders(HttpRequestBase request, StringWriter writer)
{
foreach (string key in request.Headers.AllKeys)
{
writer.WriteLine(string.Format("{0}: {1}", key, request.Headers[key]));
}
writer.WriteLine();
foreach (string key in request.Params.AllKeys)
{
writer.WriteLine(string.Format("{0}: {1}", key, request.Params[key]));
}
writer.WriteLine();
}
【问题讨论】:
-
有时还需要在 web.config 中添加
<httpRuntime requestValidationMode="2.0" /> -
谢谢,在将
<httpRuntime requestValidationMode="2.0" />添加到网络配置后它工作了
标签: c# .net asp.net-mvc-4 httprequest dangerous-request