自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

ASP.NET中的HttpWorkerRequest對像

開發(fā) 后端
本文介紹ASP.NET中的HttpWorkerRequest對像,分析ASP.NET頁面請求的原理。當(dāng)我們在瀏覽器上輸入一個URL時的流程。

每一個ASP.NET程序執(zhí)行時都會對當(dāng)前URL的請求進(jìn)行解析,本文將分析ASP.NET頁面請求的原理。當(dāng)我們在瀏覽器上輸入一個URL時, 流程如下:

首先被WWW服務(wù)器截獲(inetinfo.exe進(jìn)程), 該進(jìn)程首先判斷頁面后綴, 然后根據(jù)IIS中配置決定調(diào)用具體的擴(kuò)展程序。

如aspx就會調(diào)用aspnet_isapi.dll, 然后由aspnet_isapi.dll發(fā)送給w3wp.exe(iis 工作者進(jìn)程,IIS6.0中叫做 w3wq.exe,IIS5.0中叫做 aspnet_wp.exe).

接下來就是w3wp.exe調(diào)用.net類庫進(jìn)行具體處理,流程如下:

ISAPIRuntime-->HttpRuntime-->HttpApplicationFactory-->HttpApplication-->HttpModule--HttpHandlerFactory-->HttpHandle

1. ISAPIRuntime

主要作用是調(diào)用一些非托管代碼生成HttpWorkerRequest對象,HttpWorkerRequest對象包含當(dāng)前請求的所有信息,然后傳遞給HttpRuntime,這里生成的HttpWorkerRequest對象可以直接在我們的頁面中調(diào)用的,通過它取得原始的請求信息:

2. HttpRuntime
a. 根據(jù)HttpWorkerRequest對象生成HttpContext,HttpContext包含request、response等屬性;
b. 調(diào)用HttpApplicationFactory來生成IHttpHandler(這里生成的是一個默認(rèn)的HttpApplication對象,HttpApplication也是IHttpHandler接口的一個實現(xiàn))
c. 調(diào)用HttpApplication對象執(zhí)行請求

3. HttpApplicationFactory.

主要是生成一個HttpApplication對象:

首先會查看是否存在global.asax文件,如果有的話就用它來生成HttpApplication對象,從這里我們可以看到global.asax的文件名是在asp.net的框架中寫死的,不能修改的。如果這個文件不存在就使用默認(rèn)的對象。

4. HttpApplication

這個是比較復(fù)雜也比較重要的一個對象, 首先是執(zhí)行初始化操作,比較重要的一步就是進(jìn)行HttpModule的初始化:

HttpApplication代表著程序員創(chuàng)建的Web應(yīng)用程序。HttpApplication創(chuàng)建針對此Http請求的 HttpContext對象,這些對象包含了關(guān)于此請求的諸多其他對象,主要是HttpRequest、HttpResponse、 HttpSessionState等。這些對象在程序中可以通過Page類或者Context類進(jìn)行訪問。

它會讀取web.config中所有HttpModule的配置

5. HttpModule

6. HttpHandlerFactory

7. HttpHandler

【編輯推薦】

  1. 介紹ASP.NET MVC框架
  2. 淺談ASP.NET MVC的MvcContrib.FluentHtml
  3. ASP.NET框架的功能與ASP.NET MVC模式的應(yīng)用介紹
  4. 淺析Asp.net MVC生命周期
  5. 配置ASP.NET AJAX概述
責(zé)任編輯:佚名 來源: 51CTO.com
相關(guān)推薦

2009-07-24 10:10:22

ASP.NET

2009-07-24 16:17:42

WebRequestEASP.NET

2009-07-21 15:38:31

2009-07-22 17:55:52

2009-08-04 18:05:37

動態(tài)編譯ASP.NET

2009-07-31 09:58:20

URL映射ASP.NET

2009-07-27 13:01:28

TreeViewASP.NET

2009-08-04 17:30:23

cookieless屬ASP.NET

2009-07-20 17:21:43

Session狀態(tài)ASP.NET

2009-09-11 09:09:00

ASP.NETAdRotator控件

2009-07-30 12:35:51

ASP.NET中的對象

2009-07-20 13:32:24

ScriptManagASP.NET

2009-07-23 16:20:48

HTTP協(xié)議ASP.NET

2009-07-30 13:28:55

ASP.NET中的ja

2009-07-20 15:19:52

ViewState本質(zhì)ASP.NET

2009-07-31 10:08:33

OutputCache

2009-07-22 17:45:35

ASP.NET教程

2009-08-03 14:22:33

什么是ASP.NET

2009-07-28 17:17:19

ASP.NET概述

2009-07-27 09:31:06

定義JavaScripASP.NET
點贊
收藏

51CTO技術(shù)棧公眾號