1. 程式人生 > >HttpApplication事件執行順序

HttpApplication事件執行順序

HttpApplication 類的例項(是不是想起Global檔案了?)是在 ASP.NET 基礎結構中建立的,而不是由使用者直接建立的。HttpApplication 類的一個例項在其生存期內被用於處理多個請求,但它一次只能處理一個請求。這樣,成員變數才可用於儲存針對每個請求的資料。

應用程式按照以下順序執行由 global.asax 檔案中定義的模組或使用者程式碼處理的事件:

1.BeginRequest(在 ASP.NET 響應請求時作為 HTTP 執行管線鏈中的第一個事件發生)
2.AuthenticateRequest (當安全模組已建立使用者標識時發生。注:AuthenticateRequest 事件發出訊號表示配置的身份驗證機制已對當前請求進行了身份驗證。預訂 AuthenticateRequest 事件可確保在處理附加的模組或事件處理程式之前對請求進行身份驗證。)
3.PostAuthenticateRequest (注意:該事件在 .NET Framework 2.0 版中是新增的。 當安全模組已建立使用者標識時發生。PostAuthenticateRequest 事件在 AuthenticateRequest 事件發生之後引發。預訂 PostAuthenticateRequest 事件的功能可以訪問由 PostAuthenticateRequest 處理的任何資料。)
4.AuthorizeRequest (當安全模組已驗證使用者授權時發生。AuthorizeRequest 事件發出訊號表示 ASP.NET 已對當前請求進行了授權。預訂 AuthorizeRequest 事件可確保在處理附加的模組或事件處理程式之前對請求進行身份驗證和授權。)
5.PostAuthorizeRequest (.NET 2.0裡新增的事件。在當前請求的使用者已獲授權時發生。PostAuthorizeRequest 事件發出訊號表示 ASP.NET 已對當前請求進行了授權。預訂PostAuthorizeRequest 事件可確保在處理附加的模組或處理程式之前對請求進行身份驗證和授權。)
6.ResolveRequestCache (當 ASP.NET 完成授權事件以使快取模組從快取中為請求提供服務時發生,從而跳過事件處理程式(例如某個頁或 XML Web services)的執行。)
7.PostResolveRequestCache (在 ASP.NET 跳過當前事件處理程式的執行並允許快取模組滿足來自快取的請求時發生。)在 PostResolveRequestCache 事件之後、PostMapRequestHandler 事件之前建立一個事件處理程式(對應於請求 URL 的頁)。
8.PostMapRequestHandler(在 ASP.NET 已將當前請求對映到相應的事件處理程式時發生。)
9.AcquireRequestState ***********注意:能使用到Session*******************
10.PostAcquireRequestState
11.PreRequestHandlerExecute(執行事件處理程式。)
12.PostRequestHandlerExecute ***********注意:能使用到Session*******************
13.ReleaseRequestState
14.PostReleaseRequestState (在PostReleaseRequestState 事件之後,響應篩選器(如果有)將對輸出進行篩選。)
15.UpdateRequestCache
16.PostUpdateRequestCache
17.EndRequest

相關推薦

HttpApplication事件執行順序

HttpApplication 類的例項(是不是想起Global檔案了?)是在 ASP.NET 基礎結構中建立的,而不是由使用者直接建立的。HttpApplication 類的一個例項在其生存期內被用於處理多個請求,但它一次只能處理一個請求。這樣,成員變數才可用於儲存針對每

jquery的AJAX中各個事件執行順序

.ajax star ajaxstop jquery ajax let start 執行 .com jquery的AJAX中各個事件執行順序如下: 1.ajaxStart(全局事件) 2.beforeSend 3.ajaxSend(全局事件) 4.success 5.aja

JS事件執行順序理解以及 e.stopPropagation()

先捕獲(document-往下)->後執行(執行)->冒泡(具體到不具體); addEventListener 第三個引數 預設false   (false 是冒泡階段執行)   true 是捕獲階段執行   如果是多個元素巢狀的情況

WinForm 生命周期, WinForm 事件執行順序

ext ech 執行 tin focus hand got 生命周期 text 1.窗體啟動: Control.HandleCreatedControl.BindingContextChangedForm.LoadControl.VisibleChangedForm.Act

Global事件執行順序

Global.asax 檔案,有時候叫做 ASP.NET 應用程式檔案,提供了一種在一箇中心位置響應應用程式級或模組級事件的方法。你可以使用這個檔案實現應用程式安全性以及其它一些任務。下面讓我們詳細看一下如何在應用程式開發工作中使用這個檔案。概述Global.asax 位

JS事件機制:事件繫結、事件監聽、事件委託(代理)和事件執行順序總結

JS 對於使用者的操作做出響應,就必須對DOM元素繫結事件處理函式 事件繫結  1、在DMO中直接繫結事件 <input type="button" value="click me"

一起看看MonoBehavior內部事件執行順序

寫在最前面 或許對於大部分Unity3D程式設計師來說,第一次接觸指令碼編寫的時候都是從MonoBehavior開始的。MonoBehavior是Uniy3d指令碼編寫核心的類之一, 它預先定義好了很多事件,並且這些事件按照預先定義好順序執行。瞭解MonoBehavior提供的這些事件的執行順序,是我們進

WinFrom DataGridView 常用事件執行順序

When moving from cell to cell (in the same row) you get: 1) Cell Leave (old cell) 2) Cell Validating/ed (old cell) 3) Cell Enter (new cell

VB.NET中8個主要的事件執行順序

VB.NET幾個主要的事件執行順序: >>>顯示窗體過程中 new HandleCreated Load Activated '這個事件以後可以被觸發多次,每當使用者啟用窗體是都會觸發此事件 >>>關閉窗體過程中 Closi

aspx 的頁面事件執行順序

aspx頁面生命週期事件 Page_PreInit 使用IsPostBack屬性確定是否是第一次處理該頁;建立動態控制元件;動態設定Theme屬性;讀取或設定配置檔案屬性值等Page_Init 讀取或初始化控制元件屬性Page_Preload 事件在所有回發資料處理之後但在

滑鼠點選 INPUT 元素後預設觸發的事件執行順序

所有瀏覽器中,當用戶通過滑鼠操作觸發 click 事件時,事件觸發順序: 1、MouseDown 事件 2、Focus 事件 3、MouseUp 事件 4、Click 事件 可點選測試網頁 測試程式碼如下: <script> w

Unity3D事件函數的執行順序

攝像機 觸發 var med lac 視圖 專業 chains war In Unity scripting, there are a number of event functions that get executed in a predetermined order

JS中事件執行順序和AJAX的異步

容易 jquery 博客 出現問題 同步 內容 img 留言 加載 之前了解過異步和同步,知道同步是順序執行,異步是同時執行,但是沒有遇到過這種情況,不是很理解,這兩天做項目突然遇到了,對這有了一個初步的認識。廢話不多說,直接上要求。 1.項目要求:外部調用x

觀察者模式中多執行執行訂閱事件順序執行的問題

       對事件釋出訂閱模式中啟動執行緒執行操作,但又要保證執行緒順序執行的一些思考和實踐,在開發過程中,經常會遇到需要使用事件來觸發方法執行的情況,比如CS中按鈕的點選事件,滑鼠移動事件,鍵盤監聽事件等等,有時候需要執行比較耗時的任務,但並不希望阻塞主執

Unity5指令碼事件函式及其執行順序

指令碼函式 編輯器相關函式 初始化函式 物理相關函式 輸入相關函式 遊戲邏輯相關函式

form表單中onclick事件和onsubmit事件執行順序

說來很慚愧,今天因為form表單的一個小問題困擾了一下午。雖然最終得以解決,但花費的時間實在是令人汗顏,現在總結一下遇到的問題。 先說一下背景,之前幫一個朋友的專案寫了一個原生js的表單驗證,今天

關於Unity物理事件執行順序的最新理解

物體A: public class A:{    B b;    void FixedUpdate(){        if(input.GetKeyDow(Keycode.I)) {     &nb

網龍暑期訓練營第一週:MonoBehavior函式執行順序、碰撞與滑鼠事件

本文通過實驗梳理第一週訓練營視訊中所提到的知識點,便於大家複習鞏固,也便於自己日後查閱。視訊內容主要分為三個部分: MonoBehavior的執行順序 碰撞事件 滑鼠事件 配合視訊使用效果更佳。 1.MonoBehavior的執行順序

Unity3D中自帶事件函式的執行順序

在Unity3D指令碼中,有幾個Unity3D自帶的事件函式按照預定的順序執行作為指令碼執行。其執行順序如下: 編輯器(Editor) Reset:Reset函式被呼叫來初始化指令碼屬性當指令碼第一次被附到物件上,並且在Reset命令被使用時也會呼叫。 編者注:Reset是

mousedown、mouseup、click事件之間的關係及執行順序

三個事件的觸發時機 mousedown 當滑鼠指標移動到元素上方,並按下滑鼠按鍵(左、右鍵均可)時,會發生 mousedown 事件。 與 click 事件不同,mousedown 事件僅需要