Asp.net

何時使用 HttpHandlers 和 HttpModules?

  • November 28, 2014

何時使用 HttpHandlers 和 HttpModules?

我不能在後面的 ASPX 頁面程式碼中編寫該程式碼嗎?

HttpModule 允許您攔截請求(在其處理程序處理之前)並生成響應。如果需要,它可以修改請求/響應。ASP.NET 會話、配置文件、身份驗證等也被實現為 HttpModule - 這些模組檢查請求並將必要的上下文(例如基於會話 cookie 的會話狀態)附加到請求。這樣的功能很難通過後面的aspx程式碼來實現。

HttpHandler 負責處理請求,即生成 HTTP 響應,這通常(但不總是)意味著生成一些 html。頁麵類(aspx 的基礎)只不過是 http 處理程序(其他端點也是如此,例如 asmx、ashx、axd)。當您需要對響應生成進行絕對控制時,原始處理程序 (ashx) 很有用 - 可以使用 aspx 代替,但它會不必要地涉及所有預設頁面/控制機制(視圖狀態、發布日期、控制樹等) .

引用自:https://stackoverflow.com/questions/4517555