ASP.NET从客户端中检测到有潜在危险的request.form值的3种解决方法
投稿:junjie
这篇文章主要介绍了ASP.NET从客户端中检测到有潜在危险的request.form值的3种解决方法,这是ASP.NET开发中一个比较常见的经典的问题,需要的朋友可以参考下
当页面编辑或运行提交时,出现“从客户端中检测到有潜在危险的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"%>
2、全局修改web.config配置文件(此举不建议、不安全)
打开web.config文件,在<system.web></system.web>中间,加上如下代码:
复制代码 代码如下:
<pages validateRequest="false" />
3、另一种处理方法:原因是所传值含有特殊危险符号,那么可以在传前,利用Server.HtmlEncode(string)方法,对字符串进行编码,这样就会将危险字符转义为普通的字符。如TextBox1.Text=Server.HtmlEncode(str);