ASP.NET运行机制

原创 2007年07月06日 21:44:00

1.ASP.NET运行原理概述

  如上图,当一个http请求发送过来并被IIS机收到之后,IIS首先通过你请求的页面类型为其加载相应的dll文件,然后在处理过程中将这条请求发送给能够处理这条请求的模块,而在ASP.NET中这个模块就叫做HttpHandler,为什么aspx这样的文件可以被服务器处理,那是因为在服务器端有默认的HttpHandler专门处理aspx文件,IIS再将这条请求发送给能够处理这条请求的模块之前,还需要经过一些HttpModule,这些都是系统默认的Modules,而且在这个http请求传到HttpHandler之前要经过不同的HttpModuls的处理,这就像我们如果要乘坐国际航班飞抵异国他乡的话,在 你真正坐上飞机前,要经过购买机场建设费,办理登记手续核实身份,进行行李打包托运,进行安全检察,现在又要进行体温等检察一样,需要经一系列的严格的手 续。这样做有什么好处,一是为一些必须的过程,二是为了安全性,三是为了提高效率,四是为了我们能够在更多的环节上进行控制,即增强了我们的控制能力。而 上述的都是系统的,怎么能说是我们的对http请求控制能力能,那么我们是否可以建立自己的HttpModuleHttpHandler吗?答案是肯定的。但我们先不要急于做事,让我们再深入研究一下运行机制吧。

2.ASP.NET运行机制

  那么上面这张图让我们能够更清楚地看到一个http请求是如何经过服务器的处理的,同时通过这张图我们也可以看出Request是掌管着所有客户端输入的。图中为我们展示了一个http请求有可能经过的四条路线。当你第一次访问这个页面时这个请求首先依次经过HttpModulsHttpHandler的处理,而在HttpHandler的处理中服务器会为你转到你真正要访问的页面,然后通过ASP Engine来找到这个页面背后的类,并实例化为一个临时对象,再此过程中会触发一系列的事件,其中一部份的事件需要经过对象中的方法处理,之后服务器会将这个处理后页面发移交给Response对象,然后由Response对象将这个页面发送到客户端。这就是第一条路线,而当你在这个页面上进行重新提交一些信息,并继续向服务器发送请求时,因为你的服务器之间的会话已经建立,对于你所在的那个临时对象在服务器中已经建立,所以不用再经过初始化页面的工作,故这第二条路线是按照 HttpModulsHttpHandler,然后直接与临时对象交互,然后返回的。第三条路线与第二条不同的是在处理请求时如果涉及到需要调用ASP Cache,ASP 缓存的,而临时对象回将直接从ASP 缓存提取信息并返回.这第四条路线就是当你刷新这个页面的时候,服务器接收到时发现这个请求先前已经处理过了,并将处理结果存储到由一个默认的HttpModule管理的输出缓存中了,那么我们就可以直接从这个缓存提取信息并返回,而无需再重新处理一遍了。

 

ASP.NET之旅--浅谈Asp.net运行机制(一)

很多Asp.net开发人员都有过Asp的背景,以至于我们开发程序的时候总是停留在“页面”层次思考,也就是说我们常常会只考虑我们现在所做的系统是要完成什么功能,是要做问卷调查网站还是个人网站,而很少在“...
  • zhang_xinxiu
  • zhang_xinxiu
  • 2013年09月02日 07:56
  • 11019

ASP.NET页面运行机制以及请求处理流程

ASP.NET页面运行机制以及请求处理流程 IIS处理页面的运行机制 IIS自身是不能处理像ASPX扩展名这样的页面,只能直接请求像HTML这样的静态文件,之所以能处理ASPX这样扩展...
  • shouhou_Bingo
  • shouhou_Bingo
  • 2015年04月13日 14:14
  • 1286

HTTP协议/IIS 原理及ASP.NET运行机制浅析【图解】

转自:http://www.uml.org.cn/net/201306193.asp 前言 前一段在整理邮件的时候发现几年前和CDD老师交流时的一份邮件.下面是简单摘要: “从技术角...
  • chelen_jak
  • chelen_jak
  • 2015年11月25日 18:13
  • 2333

asp.net运行机制图,必备参考2

  • 2008年10月19日 05:11
  • 3.01MB
  • 下载

asp.net运行机制图,必备参考

  • 2008年10月19日 05:10
  • 29KB
  • 下载

ASP.NET MVC的运行机制--url的全局分析

首先,用户通过Web浏览器向服务器发送一条url请求,这里请求的url不再是xxx.aspx格式,而是http://HostName/ControllerName/ActionName/Paramet...
  • admindong
  • admindong
  • 2016年09月13日 20:49
  • 156

ASP.NET MVC架构与实战系列之一:理解MVC底层运行机制

今天,我将开启一个崭新的话题:ASP.NET MVC框架的探讨。首先,我们回顾一下ASP.NET Web Form技术与ASP.NET MVC的异同点,并展示各自在Web领域的优劣点。在讨论之前,我对...
  • Sayesan
  • Sayesan
  • 2015年08月19日 13:48
  • 2975

HTTP协议/IIS 原理及ASP.NET运行机制浅析

本文是转自火龙果 http://www.uml.org.cn/wenzhang/artindex.asp 前言  原文章地址http://www.uml.org.cn/net/2013061...
  • han_yankun2009
  • han_yankun2009
  • 2013年06月25日 14:43
  • 1478

[每日刷题(2015/7/10)]简述ASP.NET的页面运行机制

如图是ASP.NET的一个页面的基本运行机制,这是一条主要线路。 具体的讲一共有四条类似与上图这样的路线,但各有区别。(上图第3步中说html代码是ASP.NET生成的,强调的是ASP.NET不是一...
  • guigenyi
  • guigenyi
  • 2015年07月10日 10:18
  • 454

ASP.NET运行机制原理

ASP.NET运行机制原理01 ---浏览器与IIS的交互过程 一、浏览器和服务器的交互原理    (一)、浏览器和服务器交互的简单描述: 1.通俗描述:我们平时通过浏览器来访问网站,其实就相...
  • u012968272
  • u012968272
  • 2015年05月06日 01:28
  • 891
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ASP.NET运行机制
举报原因:
原因补充:

(最多只允许输入30个字)