请求管道与19个标准事件

1.BeginRequest

ASP.NET开始处理对的第一个事件,表示处理的开始。

2.AuthenticateRequest

验证请求,一般用来去请求的用户信息

3.PostAuthenticateRequest

已经获取请求的用户信息

4.AuthorizeRequest

授权,一般用来检查用户的请求是否获取权限

5.PostAuthorizeRequest

用户请求已经得到授权

7.PostResolveRequestCache

已经完成缓存的获取工作

8.PostMappRequestHandler

已经根据用户的请求,创建了处理请求处理器的对象。

9.AcquireRequestState

取得请求的状态,一般用户Session

10.PostAcquireRequestState

已经取得了Session

11.PreRequestHandlerExecute

准备执行处理程序。

11、12管道事件之间开始进入页面生命周期(Page类)

①执行一般处理程序或者是页面的PR方法

②创建控件树:_BuilderControlTree 内部就是将整个页面控件树的结构创建好,如果是普通的C#代码,将被编译到一个方法体里。

③决定是否IsPostBack,确定当前请求是否是回发,通过ViewState实现,如果ViewState

④PreInit()初始化执勤啊的一个事件

Init()实际输出化:就是将控件树上的控件都new一个实例,并赋默认值。Init方法内部是执行一个递归初始化。

InitComplete

⑤加载ViewState加载页面的状态,解析隐藏域中的ViewState

⑥ProcessPostData处理回发数据

1.比较表单提交过来的数据和控件上原来的状态做对比,然后将需要触发改变的控件放到一个集合里面去。

2.将表单里面的值赋值到控件上。

⑦页面加载PreLoad

(这是在事件响应之前最后改变事件的地方)

Load(PageLoad)

⑧ProcessPostData:第二次处理回发数据。

再次将要触发改变事件的控件又一次的放到集合里面去。

⑨触发改变的事件LoadComplete

⑩触发PostBack回来的控件的事件

?PreRend(渲染之前)

渲染:就是将服务器端的控件转换成html代码,这也是最后一次能改变即将发送给客户端的响应内容

?页面渲染。

12.PostRequestHandler

已经执行了处理程序

13.ReleaseRequestState

释放请求的状态

14.PostReleaseRequestState

已经释放了请求的状态

15.UpdateRequestCache

更新缓存

16.PostUpdateRequestCache

已经更新了缓存

17.LogRequest

请求的日志操作

18.PostLogRequest

已经完成了请求的日志操作

19.EndRequest

本次请求处理完成

时间: 2024-10-21 17:13:27

请求管道与19个标准事件的相关文章

页面请求管道和19个标准事件

页面请求管道和19个标准事件 图片来自网络

ASP.NET请求管道、应用程序生命周期、整体运行机制

我们知道在ASP.NET中,若要对ASP.NET应用程序进行 初始化并使它处理请求,必须执行一些处理步骤,熟悉应用程序生命周期非常重要,这样才能在适当的生命周期阶段编写代码,达到预期的效果.永远不要做只会拖 控件的.NET程序员,Never!那么你就必须懂ASP.NET应用程序生命周期,懂ASP.NET页面生命周期,懂ASP.NET 服务器控件原理.接下来,我们一起来看看 可以先看一下先导篇 [深入ASP.NET原理系列]--ASP.NET请求管道对Asp.Net WebForm和Asp.Net

如何使用请求管道中事件实现自定义方法

1.新建类xx.cs:IHttpModule,继承该接口,实现接口方法 public class ValidateSessionHttpModule : IHttpModule { public void Dispose() { throw new NotImplementedException(); } /// <summary> /// 完成请求管道中事件的注册 /// </summary> /// <param name="context">&

从请求管道深入剖析HttpModule的实现机制,有图有真相

想要了解底层的原理必须对请求处理过程和页面的生命周期有点了解才方便您入门学习一下内容: 关于请求处理过程和页面的生命周期将会在接下来的日子为大家做一个深入的讲解. HttpModule的实现机制如下: 1.请求到达ISAPIRuntime 的时候通过ProcessReqeust(下文统称pr ) 方法创建 HttpWrokRequest 对象. 2.在执行ISAPIRuntime 的pr 方法时候,方法内部的HttpRuntime 的pr 方法根据HttpWorkRequest 对象创建了上下文

第五篇 基于.net搭建热插拔式web框架(拦截器---请求管道)

好了,前边我们把核心内容介绍完了,接下来要做的就是拦截用户的请求,并把请求转向沙箱内. 这里我们准备通过实现一个HttpModule类来完成请求的拦截与转发.新建一个HuberHttpModule类,并继承IHttpModule.下面我们暂时只处理Application_BeginRequest事件. 先获取request和response对象 HttpApplication application = sender as HttpApplication; HttpResponse respon

ASP.NET MVC5请求管道和生命周期

请求处理管道 请求管道是一些用于处理HTTP请求的模块组合,在ASP.NET中,请求管道有两个核心组件:IHttpModule和IHttpHandler.所有的HTTP请求都会进入IHttpHandler,有IHttpHandler进行最终的处理,而IHttpModule通过订阅HttpApplication对象中的事件,可以在IHttpHandler对HTTP请求进行处理之前对请求进行预处理或IHttpHandler对HTTP请求处理之后进行再次处理. 在IIS7之前,如IIS6或IIS5,请

mvc请求管道(一)

一.前言 在平常做后台开发的时候,经常会说到请求管道,很多开发者都知道这个,也能说几句,但是没办法详细的说一说,今天就来详细的说一下这个. 二.到达IIS之前 请看下面这个流程图.从用户打开浏览器到请求到达服务器,这些都是需要我们去配置就行了,这里面有一些知识点,http/https.tcp/ip.dns解析这些感兴趣的可以去了解一下. 三.请求到达IIS 同样先看流程图,Sys服务监听到有请求到达IIS,IIS会把这个请求转发给ISAPI,ISAPI即Internet Server Appli

ASP.NET MVC5 的请求管道和运行生命周期

https://www.jianshu.com/p/848fda7f79e0 请求处理管道 请求管道是一些用于处理HTTP请求的模块组合,在ASP.NET中,请求管道有两个核心组件:IHttpModule和IHttpHandler.所有的HTTP请求都会进入IHttpHandler,有IHttpHandler进行最终的处理,而IHttpModule通过订阅HttpApplication对象中的事件,可以在IHttpHandler对HTTP请求进行处理之前对请求进行预处理或IHttpHandler

管道重定向之重定向标准输入输出句柄

管道重定向之重定向标准输入输出句柄1.如果控制台应用程序数据流中包含中文,则要调用 _tsetlocale(LC_ALL, _T("chs")),否则数据流中的中文字符会被当成中止符而被截断,如printf("abc中文def"),只会输出"abc" 2.printf,cout,wcout中的换行符'\n',会被修改为回车加换行'\r\n'传递到管道中,如有语句printf("abc\r\n"),传递的真实数据流是"