从客户端 中检测到有潜在危险的Request.Form值
2016-05-23 14:49
525 查看
Request时出现有HTML或Javascript等字符串时,系统会认为是危险性值。立马报出“从客户端 中检测到有潜在危险的Request.Form值”这样的错,
以下是解决方案。
(1) 在aspx页面
解决方案一: 在.aspx文件头中加入这句: <%@ Page validateRequest="false" %>
eg:<%@ Page Language="C#" AutoEventWireup="false" ValidateRequest="false" CodeFile="你的页面.vb" Inherits="你的页面" %>
解决方案二:
修改web.config文件:
<configuration>
<system.web>
<pages validateRequest="false" />
</system.web>
</configuration>
因为validateRequest默认值为true。只要设为false即可。
(2)在MVC中使用
原因和解决方法:
1. 原因:是因为对某个控件赋Text值时,字符串里包含危险字符,如"<","\",">","&","\r\n"等字符。
2. 解决方法:
(1)如果是我们确实需要加入这些字符,比如我想生成的字符串加载到TextBox时,有缩进,换行就需要"\r\n\t"。解决方法是在需要的那个页面<@ Page />标签里加“validateRequest="false"”,意思是不对回传数据进行验证,因为不安全,建议只写在页面,不要写在web.config中。
如果项目是framework2.0的话,应该就好了,如果是framework4.0,就需要在web.config,<system.web>节点下加<httpRuntime requestValidationMode="2.0" />就可以了。
(2)如果不是自己需要的,可以使用Server.HtmlEncode(string)方法,对字符串进行编码,这样就会将危险字符转义为普通的字符。如TextBox1.Text=Server.HtmlEncode(teststring);
以下是解决方案。
(1) 在aspx页面
解决方案一: 在.aspx文件头中加入这句: <%@ Page validateRequest="false" %>
eg:<%@ Page Language="C#" AutoEventWireup="false" ValidateRequest="false" CodeFile="你的页面.vb" Inherits="你的页面" %>
解决方案二:
修改web.config文件:
<configuration>
<system.web>
<pages validateRequest="false" />
</system.web>
</configuration>
因为validateRequest默认值为true。只要设为false即可。
(2)在MVC中使用
原因和解决方法:
1. 原因:是因为对某个控件赋Text值时,字符串里包含危险字符,如"<","\",">","&","\r\n"等字符。
2. 解决方法:
(1)如果是我们确实需要加入这些字符,比如我想生成的字符串加载到TextBox时,有缩进,换行就需要"\r\n\t"。解决方法是在需要的那个页面<@ Page />标签里加“validateRequest="false"”,意思是不对回传数据进行验证,因为不安全,建议只写在页面,不要写在web.config中。
如果项目是framework2.0的话,应该就好了,如果是framework4.0,就需要在web.config,<system.web>节点下加<httpRuntime requestValidationMode="2.0" />就可以了。
(2)如果不是自己需要的,可以使用Server.HtmlEncode(string)方法,对字符串进行编码,这样就会将危险字符转义为普通的字符。如TextBox1.Text=Server.HtmlEncode(teststring);
相关文章推荐
- arm交叉编译器gnueabi、none-eabi、arm-eabi、gnueabihf、gnueabi区别
- Longest Increasing Subsequence
- Deque 容器
- runOnUiThread(new Runnable())
- [HDU2604]Queuing(dp+矩阵快速幂)
- Android使用ActionBar搭建Android UI框架
- 将pgm图片使用Sequence file存储到hdfs,并读取为Mat数组格式
- iOS学习之——prepareForSegue:sender:
- android开发依赖注入-RoboGuice
- \opencv\build\x86下的vc9,vc10、vc11、vc12是什么意思?
- CodeForces - 675A Infinite Sequence (模拟)水
- UISplitViewController使用记录
- STL系列之一 deque双向队列
- 翻译mosRCONFIG : Frequently Asked Questions (文档 ID 387046.1)
- UILabel的各种属性
- 【Arduino官方教程第一辑】示例程序 5-1 数组
- UEditor 使用调试过程
- 为网上流行论点“UIAutomator不能通过中文文本查找控件”正名
- 关于The serializable class XXX does not declare a static final serialVersionUID field of type long的警告
- UE4插件