asp.net请求处理的过程

管道中的时间全部注册在HttpApplication里面,里面所有的HttpModule都会被执行,所以我们自己定义的Module只要继承了IHttpModulename就可以在里面定义init方法来控制管道中的事件了。我们可以在init方法里面注册管道中的事件。

怎么和管道结合:

请求--》Http.SYS分类处理--》aspnet_isapi.dll--》ISPAIRuntime--》HttpWorkRequest对象--》HttpRuntime-->创建出HttpContent(封装了请求报文)-->HttpApplication(通过HttpApplicationFactory工厂创建线程内唯一的HttpApplication对象,处理请求报文)--》

---MVC请求在这里不一样了---》在第7个事件中注册了事件存储了golab文件中的路由规则,和一系列方法,比较用户的路由和goulb里面的路由匹配,在创建路由规则的时候,创建了MVCRouteHandler方法。---》》创建了MVCHandler(),继承了IhttpHandler方法,也实现了里面的PR方法,在11,12事件的时候执行PR方法,找控制器,找视图,找代码执行。

在第8个事件的时候,会注册这个请求页面类的实例。需要在第8个事件之前注册事件才能有用。

时间: 2024-10-13 05:27:01

asp.net请求处理的过程的相关文章

ASP.NET 请求处理完整过程

请求过程 1.客户端发送请求给服务器端. 2.首先由服务器端的HTTP.SYS内核模块接受,根据端口分发给IIS(或者其他web服务器软件). 3.IIS(由一个软件进程,一个w3svc服务组成)接收到请求后,会根据端口分发给指定的工作进程 4.工作进程会对所请求的文件的文件扩展名进行检查,交给对应的扩展程序处理.(如 .aspx..ascx..ashx 和 .asmx则交给aspnet_isapi.dll扩展程序) 5.当请求为.aspx时,扩展程序会交给ASPNetRuntime托管环境调用

【转】各版本IIS下ASP.net请求处理过程区别

原文地址:http://www.cnblogs.com/fsjohnhuang/articles/2332074.html ASP.NET是一个非常强大的构建Web应用的平台,它提供了极大的灵活性和能力以致于可以用它来构建所有类型的Web应用. 绝大多数的人只熟悉高层的框架如: WebForms 和 WebServices --这些都在ASP.NET层次结构在最高层. 这篇文章的资料收集整理自各种微软公开的文档,通过比较 IIS5.IIS6.IIS7 这三代 IIS 对请求的处理过程, 让我们熟

ASP.Net请求处理机制初步探索之旅 - Part 3 管道

开篇:上一篇我们了解了一个ASP.Net页面请求的核心处理入口,它经历了三个重要的入口,分别是:ISAPIRuntime.ProcessRequest().HttpRuntime.ProcessRequest()以及HttpApplication.Init().其中,在HttpApplication的Init()方法中触发了请求处理管道事件的执行,本篇我们就来看看所谓的请求处理管道. (1)Part 1:前奏 (2)Part 2:核心 (3)Part 3:管道 (4)Part 4:WebForm

ASP.Net请求处理机制初步探索之旅 - Part 2 核心(转)

开篇:上一篇我们了解了一个请求从客户端发出到服务端接收并转到ASP.Net处理入口的过程,这篇我们开始探索ASP.Net的核心处理部分,借助强大的反编译工具,我们会看到几个熟悉又陌生的名词(类):HttpRuntime.HttpWorkerRequest.HttpContext.HttpApplication等. (1)Part 1:前奏 (2)Part 2:核心 (3)Part 3:管道 (4)Part 4:WebForm页面生命周期 (5)Part 5:MVC页面声命周期 一.第一个入口:I

ASP.Net请求处理机制简单探索之旅 - Part 1 前奏

开篇:ASP.Net是一项动态网页开发技术,在历史发展的长河中WebForm曾一时成为了ASP.Net的代名词,而ASP.Net MVC的出现让这项技术更加唤发朝气.但是,不管是ASP.Net WebForm还是ASP.Net MVC在请求处理机制上大部分都是相同的,只是在请求处理管道上的处理事件做了不同的操作,因此,本文标题不区分ASP.Net WebForm和ASP.Net MVC,但在后续的介绍中会区分开来介绍. (1)Part 1:前奏 (2)Part 2:核心 (3)Part 3:管道

ASP.Net请求处理机制初步探索之旅 - Part 1 前奏

开篇:ASP.Net是一项动态网页开发技术,在历史发展的长河中WebForm曾一时成为了ASP.Net的代名词,而ASP.Net MVC的出现让这项技术更加唤发朝气.但是,不管是ASP.Net WebForm还是ASP.Net MVC在请求处理机制上大部分都是相同的,只是在请求处理管道上的处理事件做了不同的操作,因此,本文标题不区分ASP.Net WebForm和ASP.Net MVC,但在后续的介绍中会区分开来介绍.此外,本文以IIS经典模式为主,不讨论集成模式(IIS7后加入了集成模式,不用

【IIS】我所理解的IIS处理ASP.NET页面请求过程

众所周知,一个完整的动态网页的从请求到响应无非包括以下3个步骤: 1.浏览器客户端发出http请求. 2.IIS服务端接受请求. 3.处理请求并输出请求结果到浏览器客户端. 首先,简单的说说我所理解的IIS,它依赖于Windows服务World Wide Web Publish Service的,并依赖于进程w3wp.exe的.也就是说IIS的运行离不开工作进程w3wp.exe,同时每个IIS站点下的应用程序都是被用用程序池进行隔离,应用程序池即w3wp.exe的容器,通过池隔离的机制保证当某个

ASP.Net请求处理机制初步探索之旅 - Part 2 核心

  上一篇我们了解了一个请求从客户端发出到服务端接收并转到ASP.Net处理入口的过程,这篇我们开始探索ASP.Net的核心处理部分,借助强大的反编译工具,我们会看到几个熟悉又陌生的名词(类):HttpWorkerRequest.HttpRuntime.HttpContext.HttpApplication等. 一.第一个入口:ISAPIRuntme.ProcessRequest()    ISAPIRuntime是进入NET托管环境的入口,在其PR方法中通过一个ecb句柄指向了当前请求报文体的

ASP.Net请求处理机制初步探索之旅 - Part 5 ASP.Net MVC请求处理流程

好听的歌 我一直觉得看一篇文章再听一首好听的歌,真是种享受.于是,我在这里嵌入一首好听的歌,当然你觉得不想听的话可以点击停止,歌曲 from 王菲 <梦中人>: 开篇:上一篇我们了解了在WebForm模式下一个Page页面的生命周期,它经历了初始化Init.加载Load以及呈现Render三个重要阶段,其中构造了页面控件树,并对页面控件树进行了大量的递归操作,最后将与模板结合生成的HTML返回给了浏览器.那么,在ASP.NET MVC模式下,一个页面的生命周期又经历了哪些步凑呢?别急,本篇漫漫