• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >ASP.NET > asp.net4.0框架下验证机制失效的原因及处理办法

asp.net4.0框架下验证机制失效的原因及处理办法

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-11

通过本文主要向大家介绍了注册asp.net4.0,iis配置asp.net4.0,iis注册asp.net4.0,asp net4.0,安装asp.net4.0等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

ASP.NET请求验证功能为我们提供应用程序的安全保证,避免站点受到XSS跨站脚本攻击。但在有些时候,比如我们需要使用Ckeditor等在线文本编辑器让用户输入一些HTML文本,在ASP.NET 2.0框架下,通过在web.config中设置validateRequest="false"。或者在MVC中,我们可以通过在Controller或者Action上设置[ValidateRequest(false)]这个特性来达到禁用的目的。但是在ASP.NET 4.0框架下,你会发现,即使你这样做,仍然会提示你这样的一个异常“A potentially dangerous Request.Form value was detected from the client”。这是怎么回事呢?

原来是asp.net4.0应用程序生命周期发生了变化,在之前的ASP.NET版本中,请求验证是默认启用的,但是它只对页面请求有效(请求.aspx页面),并且也只是在页面被请求时验证。但是在ASP.NET 4.0中,请求验证功能被提前到IHttpHandler.BeginRequest这个方法被请求之前,这也就意味着所有进入ASP.NET请求通道的所有的HTTP请求都将会被进行请求内容合法性的验证,包括有的自定义HttpHandler,WebService请求,甚至于利用自定义Http Module进行自定义请求处理程序。

请求验证处理被提前的后果就是导致我们在页面,或者Controller中设置ValidateRequest=false,将会失效,无法阻止程序不去验证请求的输入内容了。因为这样做后,验证器无法得到请求的页面是否禁用了验证请求,因为还没有实例化HttpHandler。并且在ASP.NET4.0中,并没有提供给我一个地方去禁用这个验证功能。但是出于兼容性的考虑,ASP.NET允许我们通过在web.config中配置使用ASP.NET 2.0的请求验证行为:<httpRuntime requestValidationMode=”2.0″ />,这样就解决了。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • asp.net4.0框架下验证机制失效的原因及处理办法
  • asp.net AJAX注册类
  • ASP.NET AJAX 4.0的模版编程(Template Programming)介绍

相关文章

  • 2017-05-11Asp.net中获取应用程序完整Url路径的小例子
  • 2017-05-11无法将函数定义与现有的声明匹配 问题的解决办法 分享
  • 2017-05-11ASP.NET MVC3模板页的使用(2)
  • 2017-05-11ADO.NET之连接池技术的使用详解
  • 2018-08-20IIS实现反向代理时Cookie域的设置方法
  • 2018-08-20如何处理ASP.NET Core中HTML5客户端路由回退的问题
  • 2017-05-11ASP.NET使用Subtract方法获取两个日期之间的天数
  • 2017-05-11asp.net中一次性动态绑定多个droplistdown
  • 2017-05-11asp.net中CSharpThinking扩展方法分析
  • 2017-05-11Asp.net防止盗链的实现原理分析

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • asp.net 获取目录下的文件数和文件夹数
    • this connector is disabled错误的解决方法
    • ASP.NET使用AjaxPro实现前端跟后台交互详解
    • 微信小程序基于腾讯云对象存储的图片上传功能
    • windows中允许服务与桌面交互的更改方法示例
    • ASP.NET中基于soaphead的webservice安全机制
    • ASP.NET中Label控件用法详解
    • .NET更新Xml中CDATA内容的方法实例
    • .Net Core 之 Ubuntu 14.04 部署过程(图文详解)
    • asp.net导出Excel显示中文乱码的解决方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有