表单提交检测到有潜在风险request.form值,该怎么应对? |
发布时间:2022-10-03 文章来源:本站 浏览次数:2833 |
网页表单制作完成提交表单时:从客户端中检测到有潜在风险的 request.form值,当页面修正或运转提交时,呈现“从客户端中检测到有潜在风险的request.form值”问题,该怎么办呢?今日小编就和我们讲解下应对办法:
问题原因:由于在asp.net中,Request提交时呈现有html代码或javascript等字符串时,程序体系会以为其具有潜在风险的值。环境装备会报出“从客户端 中检测到有潜在风险的Request.Form值”这样的Error。
1、当时提交页面,添加代码 翻开当时.aspx页面,页头加上代码:validateRequest=”false”,如:
《%@ Page Language="C#" ValidateRequest="false" AutoEventWireup="false" CodeFile="default.aspx.cs" Inherits="default" %》2、大局修正web.config装备文件(此举不主张、不安全) 翻开web.config文件,在《system.web》《/system.web》中心,加上如下代码:
《pages validateRequest="false" /》假如以上两种办法都无法解决,请接着往下看,
前面两种办法失效的原因:由于你当时的.net ifreamwork结构环境是4.0。由于4.0的验证在HTTP的BeginRequest前启用,因此,请求的验证适用于一切ASP.NET资源,aspx页面,ashx页面,Web服务和一些HTTP处理程序等.
3、相同,翻开web.config装备文件,在《system.web》《/system.web》中心,加上代码:
《httpRuntime requestValidationMode="2.0" /》4、假如你的网站程序本身是net 2.0环境开发的,但放到了VS2010软件里运转,也会呈现这种状况,你能够把运转解决方案切换成net2.0即可,更换办法详见页面第3步:点击进入
5、另一种处理办法:原因是所传值含有特别风险符号,那么能够在传前,利用Server.HtmlEncode(string)办法,对字符串进行编码,这样就会将风险字符转义为一般的字符。如TextBox1.Text=Server.HtmlEncode(str); |