Sunday, May 24, 2015

HTTPHandler and HTTPModule in ASP.NET

9 comments Posted by Rahul Kharde at 10:10 AM

If you want to implement pre-processing logic before a request hits the IIS resources. For instance you would like to apply security mechanism, URL rewriting, filter something in the request, etc. ASP.NET has provided two types of interception HttpModule and HttpHandler.  

The web server examines the file name extension of the requested file, and determines which ISAPI extension should handle the request. Then the request is passed to the appropriate ISAPI extension. 

For Example

When an .aspx page is requested it is passed to ASP.Net page handler. Then Application domain is created and after that different ASP.Net objects like Httpcontext, HttpRequest, HttpResponse.

HTTPModule:
-   It's just like a filter. The Modules are called before and after the handler executes.
-   HTTP Modules are objects which also participate the pipeline but they work before and after the HTTP Handler does its job, and produce additional services within the pipeline
-   Modules implement the IHttpMudule interface located in the System.Web.System.

For example associating session within a request before HTTP handler executes, and saving the session state after HTTP handler has done its job, is basically done by an HTTP module, SessionStateModule

HTTPHandler:
-   HttpHandler is the one responsible for handling the request i.e. to generate HTTP response which often (but not always) means generating some html.
-   HTTP handlers are the end point objects in ASP.NET pipeline and an HTTP Handler essentially processes the request and produces the response.
-   It executes some code when the user sends some request. An .aspx page can be thought as a HTTPHandler too, which implements more functions. 

For example an ASP.NET Page is an HTTP Handler.



Read More »
 

Popular Posts

Recent Comments

© 2011. All Rights Reserved | Help to understand .Net | Template by Blogger Widgets

Home | About | Top