ASP.NET 管道事件与HttpModule, HttpHandler简单理解
| BeginRequest | 指示请求处理开始 |
| AuthenticateRequest | 封装请求身份验证过程 |
| AuthorizeRequest | 封装检查是否能利用以前缓存的输出页面处理请求的过程 |
| ResolveRequestCache | 从缓存中得到相应时候触发 |
| AcquireRequestState | 加载初始化Session时候触发 |
| PreRequestHandlerExecute | 在Http请求进入HttpHandler之前触发 |
| PostRequestHandlerExecute | 在Http请求进入HttpHandler之后触发 |
| ReleaseRequestState | 存储Session状态时候触发 |
| UpdateRequestCache | 更新缓存信息时触发 |
| EndRequest | 在Http请求处理完成的时候触发 |
| PreSendRequestHenaders | 在向客户端发送Header之前触发 |
| PreSendRequestConternt | 在向客户端发送内容之前触发 |

|
名称 |
描述 |
|
BeginRequest |
HTTP管道开始处理请求时,会触发BeginRequest事件 |
|
AuthenticateRequest,PostAuthenticateRequest |
ASP.NET先后触发这两个事件,使安全模块对请求进行身份验证 |
|
AuthorizeRequest,PostAuthorizeRequest |
ASP.NET先后触发这两个事件,使安全模块对请求进程授权 |
|
ResolveRequestCache,PostResolveRequestCache |
ASP.NET先后触发这两个事件,以使缓存模块利用缓存的直接对请求直接进程响应(缓存模块可以将响应内容进程缓存,对于后续的请求,直接将缓存的内容返回,从而提高响应能力)。 |
|
PostMapRequestHandler |
对于访问不同的资源类型,ASP.NET具有不同的HttpHandler对其进程处理。对于每个请求,ASP.NET会通过扩展名选择匹配相应的HttpHandler类型,成功匹配后,该实现被触发 |
|
AcquireRequestState,PostAcquireRequestState |
ASP.NET先后触发这两个事件,使状态管理模块获取基于当前请求相应的状态,比如SessionState |
|
PreRequestHandlerExecute,PostRequestHandlerExecute |
ASP.NET最终通过一请求资源类型相对应的HttpHandler实现对请求的处理,在实行HttpHandler前后,这两个实现被先后触发 |
|
ReleaseRequestState,PostReleaseRequestState |
ASP.NET先后触发这两个事件,使状态管理模块释放基于当前请求相应的状态 |
|
UpdateRequestCache,PostUpdateRequestCache |
ASP.NET先后触发这两个事件,以使缓存模块将HttpHandler处理请求得到的相应保存到输出缓存中 |
|
LogRequest,PostLogRequest |
ASP.NET先后触发这两个事件为当前请求进程日志记录 |
|
EndRequest |
整个请求处理完成后,EndRequest事件被触发 |
参考原文:http://blog.csdn.net/sundacheng1989/article/details/9995263
ASP.NET 管道事件与HttpModule, HttpHandler简单理解的更多相关文章
- ASP.NET 管道事件与HttpModule, HttpHandler简单理解 -摘自网络
第一部分:转载自Artech IIS与ASP.NET管道 ASP.NET管道 以IIS 6.0为例,在工作进程w3wp.exe中,利用Aspnet_ispai.dll加载.NET运行时(如果.NET ...
- Asp.Net 管道事件注册/HttpApplication事件注册
一.HttpApplication简介 在HttpRuntime创建了HttpContext对象之后,HttpRuntime将随后创建一个用于处理请求的对象,这个对象的类型为HttpApplicati ...
- Asp.net 管道事件
在处理该请求时将由 HttpApplication 类执行以下事件. 希望扩展 HttpApplication 类的开发人员尤其需要注意这些事件. 1. 对请求进行验证,将检查浏览器发送的信息,并确定 ...
- vue中央事件总线eventBus的简单理解和使用
公共事件总线eventBus的实质就是创建一个vue实例,通过一个空的vue实例作为桥梁实现vue组件间的通信.它是实现非父子组件通信的一种解决方案. 用法如下: 第一步:项目中创建一个js文件(我通 ...
- ASP.NET 生命周期及管道事件
Client(发送报文:请求行+请求头+空行+请求体) <------ Http 协议 ------> Server,由 Http.sys 监听 Http 请求 -> WAS+Met ...
- [ASP.NET]谈谈IIS与ASP.NET管道
作为一个Asp.Net平台开发者,非常有必要了解IIS和Asp.Net是如何结合,执行我们的托管代码,以及Asp.Net管道事件的. 本节目录 IIS 5.X IIS 6 IIS 7+ 集成模式 As ...
- 谈谈IIS与ASP.NET管道
作为一个Asp.Net平台开发者,非常有必要了解IIS和Asp.Net是如何结合,执行我们的托管代码,以及Asp.Net管道事件的. 本节目录 IIS 5.X IIS 6 IIS 7+ 集成模式 As ...
- ASP.Net 自定义HttpModule注册管道事件
背景: 一个请求在到达处理器时 可能需要做很多重复的工作 比如使用固定的算法推算出用户id 角色 如果在应用程序各处做重复解析 会产生大量代码冗余 还有能想到的诸如记录访问者 应用日志 统计流量 ...
- ASP.NET三剑客 HttpApplication HttpModule HttpHandler 解析
我们都知道,ASP.Net运行时环境中处理请求是通过一系列对象来完成的,包含HttpApplication,HttpModule, HttpHandler.之所以将这三个对象称之为ASP.NET三剑客 ...
随机推荐
- 相邻div实现一个跟着另一个自适应高度示例代码
方法一: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> < ...
- spring mvc 拦截器 拦截子目录
项目中碰到这一个问题: 对于/user/loginpage,/user/login这一类的url,放行: 对于/user/{userId}/xxx(xxx不为空)的操作,需要拦截,url-patter ...
- Hadoop.2.x_HA部署
一.概念与HA思路 1. 首先Hadoop架构为主从架构(NameNode/DataNode) 2. NameNode管理着文件系统和与维护客户端访问DataNode 3. Hadoop 2.0 之前 ...
- SPARK 中 DriverMemory和ExecutorMemory
spark中,不论spark-shell还是spark-submit,都可以设置memory大小,但是有的同学会发现有两个memory可以设置.分别是driver memory 和executor m ...
- eclipse中如何修改dynamic web module version
java项目中,若切换服务器,经常会涉及到动态web模块版本的问题. 比如:新建了web项目,开始使用tomcat服务器,但是后来使用jboss服务器,就会出现:Project facet ...
- JDK+MyEclipse+Tomcat的配置(修改Tomcat 6.x的端口)
修改tomcat的端口,在conf目录里的server.xml文件 例如想将端口修改为8080则将port的值修改为8081,其余值不变 通过Tomcat服务器访问 想通过浏览器访问这个页面,需要在T ...
- IOS第12天(1,UIViewController控制器的创建的 三种方式,和第一个view创建)
*************HMAppDelegate.m中 @implementation HMAppDelegate - (BOOL)application:(UIApplication *)app ...
- IOS第七天(3:UiTableView 模型和数据的分组的显示)
*************UiTableView模型和数据的分组的显示 #import "HMViewController.h" #import "HMHero.h&qu ...
- Kinect 图像帧的格式
一.ColorImageFormat:彩色图像帧的格式 RawYuvResolution640x480Fps15 原始YUV格式,分辨率是640x480,每秒15帧: RgbResolution128 ...
- crucible VS gerrit
crucible优缺点:1.其支持各种版本控制系统,如CVS,SVN,GIT2.代码审核方面其主要支持Post commit模式,即开发者在代码提交到master后进行review3.其虽然也支持Pr ...