成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

ASP.NET的HTTP模塊和處理程序之對話狀態

開發 后端
為了實現擴充或擴展Web服務器的功能,ASP.NET提供了HttpHandler(HTTP處理程序)和HttpModule(HTTP模塊),這里,筆者將帶各位深入了解這些組件的詳細信息。這篇文章,筆者將向大家介紹ASP.NET中HTTP處理程序中的對話狀態。

  HTTP處理程序中的對話狀態

  維護對話狀態是Web應用程序執行的最通常的事務。HTTP處理程序也需要訪問這些對話狀態。但是HTTP處理程序的默認設置是沒有激活對話狀態的。為了讀取和/或寫入狀態數據,需要HTTP處理程序實現下面的接口之一:

  · IRequiresSessionState

  · IReadOnlySessionState.

  當HTTP處理程序需要讀寫對話數據的時候,它必須實現IRequiresSessionState接口。如果它只讀取對話數據,實現IReadOnlySessionState接口就可以了。

  這兩個接口都是標記接口,并沒有包含任何方法。因此,如果你希望激活NewHandler處理程序的對話狀態,要像下面的代碼一樣聲明NewHandler類:

  1. public class NewHandler : IHttpHandler, IRequiresSessionState 

  HTTP模塊

  HTTP模塊是實現了System.Web.IhttpModule接口的.NET組件。這些組件通過在某些事件中注冊自身,把自己插入ASP.NET請求處理管道。當這些事件發生的時候,ASP.NET調用對請求有興趣的HTTP模塊,這樣該模塊就能處理請求了。

  HTTP模塊實現了IhttpModule接口的下面一些方法:

方法名稱 描述
Init 這個方法允許HTTP模塊向HttpApplication 對象中的事件注冊自己的事件處理程序。
Dispose 這個方法給予HTTP模塊在對象被垃圾收集之前執行清理的機會。

  HTTP模塊可以向System.Web.HttpApplication對象暴露的下面一些方法注冊:

事件名稱 描述
AcquireRequestState 當ASP.NET運行時準備好接收當前HTTP請求的對話狀態的時候引發這個事件。
AuthenticateRequest 當ASP.NET 運行時準備驗證用戶身份的時候引發這個事件。
AuthorizeRequest 當ASP.NET運行時準備授權用戶訪問資源的時候引發這個事件。
BeginRequest 當ASP.NET運行時接收到新的HTTP請求的時候引發這個事件。
Disposed 當ASP.NET完成HTTP請求的處理過程時引發這個事件。
EndRequest 把響應內容發送到客戶端之前引發這個事件。
Error 在處理HTTP請求的過程中出現未處理異常的時候引發這個事件。
PostRequestHandlerExecute 在HTTP處理程序結束執行的時候引發這個事件。
PreRequestHandlerExecute 在ASP.NET開始執行HTTP請求的處理程序之前引發這個事件。在這個事件之后,ASP.NET 把該請求轉發給適當的HTTP處理程序。
PreSendRequestContent 在ASP.NET把響應內容發送到客戶端之前引發這個事件。這個事件允許我們在內容到達客戶端之前改變響應內容。我們可以使用這個事件給頁面輸出添加用于所有頁面的內容。例如通用菜單、頭信息或腳信息。
PreSendRequestHeaders 在ASP.NET把HTTP響應頭信息發送給客戶端之前引發這個事件。在頭信息到達客戶端之前,這個事件允許我們改變它的內容。我們可以使用這個事件在頭信息中添加cookie和自定義數據。
ReleaseRequestState 當ASP.NET結束所搜有的請求處理程序執行的時候引發這個事件。
ResolveRequestCache 我們引發這個事件來決定是否可以使用從輸出緩沖返回的內容來結束請求。這依賴于Web應用程序的輸出緩沖時怎樣設置的。
UpdateRequestCache 當ASP.NET完成了當前的HTTP請求的處理,并且輸出內容已經準備好添加給輸出緩沖的時候,引發這個事件。這依賴于Web應用程序的輸出緩沖是如何設置的。

  除了這些事件之外,我們還可以使用四個事件。我們可以通過實現Web應用程序的global.asax文件中一些方法來使用這些事件。

  這些事件是:

  · Application_OnStart

  當***個請求到達Web應用程序的時候引發這個事件。

  · Application_OnEnd

  準備終止應用程序之前引發這個事件。

  · Session_OnStart

  用戶對話的***個請求引發這個事件。

  · Session_OnEnd

  放棄對話或者對話超期的時候引發這個事件。

【編輯推薦】

  1. ASP.NET的HTTP模塊和處理程序
  2. ASP.NET的HTTP模塊和處理程序之請求的處理過程
  3. ASP.NET的HTTP模塊和處理程序之處理程序的執行
  4. ASP.NET的HTTP模塊和處理程序之HTTP模塊的注冊和使用
  5. ASP.NET的HTTP模塊和處理程序之模塊實現
責任編輯:韓亞珊 來源: 天極網
相關推薦

2011-04-13 15:18:10

.htmHTTP請求處理

2011-04-13 16:59:41

HTTPASP.NET

2011-04-13 16:49:26

HTTPASP.NET

2011-04-13 16:27:48

HTTPASP.NET

2011-04-13 15:50:49

.htmHTTP請求處理

2009-07-28 17:17:19

ASP.NET概述

2009-07-27 13:25:15

Postback程序處ASP.NET

2009-08-03 11:21:47

ASP.NET編程模型

2009-07-23 16:20:48

HTTP協議ASP.NET

2009-07-20 17:21:43

Session狀態ASP.NET

2009-07-24 10:41:00

ASP.NET Ses

2023-07-04 08:26:15

2009-07-28 16:03:23

ASP.NET狀態服務

2009-07-28 11:09:02

ASP.NET狀態類型

2009-08-10 16:50:34

ASP.NET安裝部署

2009-07-27 12:22:03

ASP.NET和ASPASP.NET入門教程

2009-07-29 16:08:07

ASP和ASP.NET

2009-08-10 13:32:15

ASP.NET TimASP.NET組件設計

2009-07-20 16:23:01

ASP.NET授權模塊

2009-08-03 13:38:18

ASP.NET編程模型
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美视频免费在线 | 欧美精品在线观看 | 日韩av一区二区在线观看 | 国产1区在线 | 国产一区二区三区在线免费观看 | 欧美伦理一区 | 日韩在线不卡 | 国产日韩一区二区三免费高清 | 久久国产精品免费一区二区三区 | 91人人看 | 国产精品国产三级国产aⅴ中文 | 欧美一区二区三区大片 | 久热中文字幕 | 国产精品一二区 | 国产精品揄拍一区二区 | 久久国产三级 | 久久成人精品 | 国产精品爱久久久久久久 | 日韩在线观看 | 亚洲精品一区二区三区四区高清 | 99热在线免费| 黄色一级特级片 | 日韩欧美在线视频一区 | 国产精品视频一区二区三区四区国 | 久久国产精品首页 | 综合五月 | 久久久综合久久 | 日韩高清中文字幕 | 一区二区三区视频在线观看 | 一区二区三区视频免费观看 | 日韩亚洲一区二区 | 亚洲精品99 | tube国产| 99久久婷婷国产亚洲终合精品 | 亚洲人人 | 欧美lesbianxxxxhd视频社区 | 亚洲精品日本 | 综合网视频| 午夜亚洲 | 91精品国产91久久久久青草 | 日韩在线免费看 |