淺析ASP.NET應用程序
ASP.NET系統(tǒng)中默認的HttpModule:
Default Authentication Module 確保上下文中存在Authentication對象。無法繼承此類。
FileAuthorizationModule 驗證遠程用戶是否具有訪問所請求文件的 NT 權限。無法繼承此類。
Forms Authentication Module 啟用 ASP.NET應用程序以使用 Forms 身份驗證。無法繼承此類。
Passport Authentication Module 提供環(huán)繞,Passport Authentication服務的包裝。無法繼承此類。
SessionStateModule 為ASP.NET應用程序提供會話狀態(tài)服務。
UrlAuthorizationModule 提供基于 URL 的授權服務以允許或拒絕對指定資源的訪問。無法繼承此類。
Windows Authentication Module 啟用 ASP.NET應用程序以使用 Windows/IIS 身份驗證。無法繼承此類
這些系統(tǒng)默認的HttpModule是在文件machine.config中配置的,和我們開發(fā)時使用到的web.config的關系是:是在ASP.NET FRAMEWORK啟動處理一個Http Request的時候,它會依次加載machine.config和請求頁面所在目錄的web.config文件,如果在machine中配置了一個自己的HttpModule,你仍然可以在所在頁面的web.config文件中remove掉這個映射關系。
- publicclassHelloWorldModule:IHttpModule
- {
- publicHelloWorldModule()
- {
- }
- publicStringModuleName
- {
- get{return"HelloWorldModule";}
- }
- //IntheInitfunction,registerforHttpApplication
- //eventsbyaddingyourhandlers.
- publicvoidInit(HttpApplicationapplication)
- {
- application.BeginRequest+=
- (newEventHandler(this.Application_BeginRequest));
- application.EndRequest+=
- (newEventHandler(this.Application_EndRequest));
- }
- privatevoidApplication_BeginRequest(Objectsource,
- EventArgse)
- {
- //CreateHttpApplicationandHttpContextobjectstoaccess
- //requestandresponseproperties.
- HttpApplicationapplication=(HttpApplication)source;
- HttpContextcontext=application.Context;
- context.Response.Write("<h1><fontcolorfontcolor=red>
HelloWorldModule:BeginningofRequestfont>h1><hr>");- }
- privatevoidApplication_EndRequest(Objectsource,EventArgse)
- {
- HttpApplicationapplication=(HttpApplication)source;
- HttpContextcontext=application.Context;
- context.Response.Write("<hr><h1><fontcolorfontcolor=red>
HelloWorldModule:EndofRequestfont>h1>");- }
- publicvoidDispose()
- {
- }
- }
- <system.web>
- <httpModules>
- <addnameaddname="HelloWorldModule"type="HelloWorldModule"/>
- httpModules>
- system.web>
【編輯推薦】