- PHP str_replace() 函数
- Nuxt 4项目代码说明
- 独立IP主机如何实现屏蔽域名恶意解析问题
- 如何做好网站的内链?
- 浅论黑帽SEO手段
- ASP.NET Web应用程序与ASP.NET Web服务应用程序有什么区别
- 如何评价一个网站的好坏呢
- php中global的用法
- 在vs2005中用sql语句访问access数据库出现replace函数未定义错误
- 如何收录不显示网址显示名称
邮箱:
手机:15383239821
从客户端(...)中检测到有潜在危险的Request.Form 值的处理办法 .
从客户端中检测到有潜在危险的 Request.Form 值
由于在.net中,Request时出现有HTML或Javascript等字符串时,系统会认为是危险性值。立马报错上面的错误。
如:在网页的TextBox1中输入一些HTML代码,点提交按钮后会报错。
解决办法:
解决方案一:
在.aspx文件头中加入这句:
<%@ Page validateRequest="false" %>
解决方案二:
修改web.config文件:
<configuration>
<system.web>
<pages validateRequest="false" />
</system.web>
</configuration>
因为validateRequest默认值为true。只要设为false即可。
解决方案三:
当然,这样只能是让界面好看一些,要想抵制注入,还得从过滤上做足功夫
然后,还是有不禁用validateRequest的方法的,如下
不禁用validateRequest=false。
正确的做法是在你当前页面添加Page_Error()函数,来捕获所有页面处理过程中发生的而没有处理的异常。然后给用户一个合法的报错信息。如果当前页面没有Page_Error(),这个异常将会送到Global.asax的Application_Error()来处理,你也可以在那里写通用的异常报错处理函数。如果两个地方都没有写异常处理函数,才会显示这个默认的报错页面呢。
举例而言,处理这个异常其实只需要很简短的一小段代码就够了。在页面的Code-behind页面中加入这么一段代码:
以下是引用片段:
protected void Page_Error(object sender, EventArgs e)
{
Exception ex = Server.GetLastError();
if (ex is HttpRequestValidationException)
{
Response.Write("请您输入合法字符串。");
Server.ClearError(); // 如果不ClearError()这个异常会继续传到Application_Error()。
}
}
解决方案四:
在Global.asax文件的Application_Error()来处理。这样在整个网站中都生效。
void Application_Error(object sender, EventArgs e)
{
// 在出现未处理的错误时运行的代码
Exception ex = Server.GetLastError();
if (ex is HttpRequestValidationException)
{
Response.Write("请您输入合法字符串。");
Server.ClearError(); // 如果不ClearError()这个异常会继续传到Application_Error()。
}
}
-
2019-11-25C# 类型转换
-
2024-10-27怎么查看nodejs安装路径
-
2013-11-22移动控件介绍及详细使用方法:验证控件
-
2023-10-13关于IIS7.5下的web.config 404 配置的一些问题(iis8.5)
-
2023-01-11如何实现 sql2008 和 sql2012 共存?
