基础小知识

ValidateRequest属性是Page类中比较常用的属性,用来指示是否对输入数据进行潜在危险性检查。在默认情况下为True,就是表示 “是对输入的数据进行潜在危险性检查”,这个属性会对页面提交到服务器的数据进行潜在危险性检查,那么为什么需要进行潜在危险性检查呢?

其实可以把ValidateRequest看作是一种安全机制,它可以防止一些代码对于客户端的不安全侵害,大家都知道服务器连接的不可能只是一台 计算机,只要能访问到它域名的都能进行访问,所以对于服务器的安全性把关是很重要的,所以有个ValidateRequest属性,但是有人问既然这个属 性关系到安全,为什么还要让开发人员自行选择是否进行安全检测?

现在很多项目中都有那种在线编辑器,所见所得能更好的节省时间来编写项目,当需要这样做的时候,页面的ValidtaeRequest属性就必须为Flase,否则提交过去就报安全问题了,更不用说能看到这个代码的效果了。

现在大家估计用的最多的还是VS2005和VS2008,前几天我下载了个VS2010旗舰版试用,VS2008的 一个安装文件大概有4.2G左右,而VS2010旗舰版才2.5G左右,不仅容量缩小了,在一些不安全不稳定的属性上也不在支持,当时我在Page指令中 设定了 ValidateResquest=false,然后Ctrl+F5启动页面,在页面拖过来的TextBox文本框中输入<script>, 然后利用服务器端的Button提交,页面就会报错,如图

 

它说从客户端(TextBox1="<script></script>") 中检测到有 潜在危险的Request.Form值,也就是说表单提交信息中有不安全的信息,眼力好的朋友或许可以看到我已进在Page中添加了 ValidateResquest="false",而且还添加了Debug="true",看下只添加 ValidateResquest="false"的一个报错页面,如图

以上的图是只添加了ValidateResquest="false"这个属性值之后运行的报错页面,然后页面给出 了2个建议,1 就是在Page中添加Debug="true"这个属性值,那我们跟着它的指示来做,我们在Page中添加了Debug="true"之后在运行还是报 错,如图

以上的图是添加了Debug="true"属性值之后的报错页面,那 么如何在ValidateResquest="false"和Debug="true"都无用情况下使页面不检测安全信息问题呢?其实大家都知道2010 能打开2008或2005制作的项目,那就是向下兼容,那么我们就利用向下兼容的原则来破解掉使页面不检测安全信息这个问题,ASP.NET允许我们通过 在web.config中配置,使用ASP.NET 2.0的请求验证行为:<httpRuntime requestValidationMode=”2.0″ /> ,这样页面再次提交就不会报错了,如图

VS2005和2008布局几乎一样,但是在VS2010中的布局起了很大的变化,VS2010中的一大亮点就是 加入了MVC2,这个东东还真的很强大,我只能叹息微软的复刻能力太强大了,自从Java推出了MVC以来得到了众多软件开发工程师的追捧,微软自然不甘 落后,也在2010中推出了MVC2,使项目的层次结构更清晰,合作开发起来更出色,VS2010默认是.Net Framework 4,并且兼容之前 的所有版本。

post数据html数据获取危险处理办法的更多相关文章

  1. HBase 高性能获取数据(多线程批量式解决办法) + MySQL和HBase性能测试比较

    摘要:   在前篇博客里已经讲述了通过一个自定义 HBase Filter来获取数据的办法,在末尾指出此办法的性能是不能满足应用要求的,很显然对于如此成熟的HBase来说,高性能获取数据应该不是问题. ...

  2. WCF传输过大的数据导致失败的解决办法

    WCF传输过大的数据导致失败的解决办法   WCF服务默认是不配置数据传输的限制大小的,那么默认的大小好像是65535B,这才65KB左右,如果希望传输更大一些的数据呢,就需要手动指定一下缓冲区的大小 ...

  3. ArcGIS客户端API中加载大量数据的几种解决办法

    ArcGIS客户端API中加载大量数据的几种解决办法 2011-03-25 18:17 REST风格的一切事物方兴未艾,ArcGIS Server的客户端API(Javascript/Flex/Sil ...

  4. 标注工具doccano导出数据为空的解决办法

    地址:https://github.com/taishan1994/doccano_export doccano_export 使用doccano标注工具同时导出实体和关系数据为空的解决办法.docc ...

  5. Oracle误删除数据和表的恢复办法包括truncate

    在工作中我们操作数据库的时候经常会发生一个不该发生的问题:用户意外的删除一个非常重要的表或者是表中的数据而且没有备份,需要尽快的恢复,以下就是解决的办法: 主要是利用Oracle回收站的闪回特性ora ...

  6. hadoop job解决大数据量关联时数据倾斜的一种办法

    转自:http://www.cnblogs.com/xuxm2007/archive/2011/09/01/2161929.html http://www.geminikwok.com/2011/04 ...

  7. 换晶振导致stm32串口数据飞码的解决办法

    一般来说,stm32f107都是用标配的晶振,比如8MHz. 但是,如果用别的晶振,比如13.56M的晶振,那串口接收还正常吗? 根据试验结果,很可能会飞码.比如说用串口助手发送的是0x35,但是在串 ...

  8. HBase快照迁移数据失败原因及解决办法

    目录 目录 1 1. 背景 1 2. 环境 1 3. 执行语句 1 4. 问题描述 1 5. 错误信息 2 6. 问题原因 3 7. 解决办法 4 1. 背景 机房裁撤,需将源HBase集群的数据迁移 ...

  9. hive命令查询数据不显示表头解决办法

    在hive命令行中查询数据如下: 表头未显示出来 解决办法: 修改hive安装包conf/hive-site.xml配置文件: <property> <name>hive.cl ...

随机推荐

  1. 路飞学城Python-Day117

    jango用户登录界面 """ Django settings for cnblog project. Generated by 'django-admin startp ...

  2. SQLServer Oracle MySQL的区别

    table tr:nth-child(odd){ background: #FFFFCC; font-size: 18px; } table tr:nth-child(even){ backgroun ...

  3. Hadoop 技术笔记

    Flume与Kafka Flume 是一个分布式,可靠的,可用的服务,有效的收集,聚合和移动海量的日志数据.它有一个简单而灵活的架构,基于流数据流.具有很好的冗余和容错性,以及可靠性和多故障转移和恢复 ...

  4. IAR for MSP430 关于添加自定义头文件的两种方法【转】

    前言:第一次接触这个软件,编译一个例程一直出现没有包含头文件的错误,在网上找了好几个方法都没什么效果,看到了篇文章,利用里面的方法1解决了,特此复制下来保存学习用. 原文链接:https://blog ...

  5. ie7 text-indent input影响

    IE6/IE7中text-indent对input背景的影响 在text-indent在IE6/IE7中的位置偏移BUG一文中讨论过IE6/IE7中inline-block元素设置text-inden ...

  6. Java压缩和解压缩文件工具

    Java压缩和解压缩文件工具 学习了: https://www.oschina.net/code/snippet_1021818_48130 http://blog.csdn.net/gaowen_h ...

  7. Linux Kernel(Android) 加密算法总结(一)(cipher、compress、digest)

    1. Linux内核支持哪些加密算法 ? 内核支持的加密算法非常多,包含: 对称加密算法.如AES,3DES. 对称password体制的发展趋势将以分组password为重点. 分组password ...

  8. 自己动手写CPU之第七阶段(6)——乘累加指令实现思路

    将陆续上传本人写的新书<自己动手写CPU>.今天是第29篇.我尽量每周四篇 亚马逊的销售地址例如以下,欢迎大家围观呵! http://www.amazon.cn/dp/b00mqkrlg8 ...

  9. CGContext含义

    代码 含义 CGContextRef context = UIGraphicsGetCurrentContext(); 设置上下文 CGContextMoveToPoint 开始画线 CGContex ...

  10. 英语发音规则---S字母

    英语发音规则---S字母 一.总结 一句话总结: 1.S 在音节开头或清辅音前 /s/? sit /sɪt/ vt.& vi.坐 seat /si:t/ n.席位 sell /sel/ vt. ...