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 are created. Then
instance of HttpApplication is created and also instance of any configured
modules. One can register different events of HttpApplication class like
BeginRequest, AuthenticateRequest, AuthorizeRequest, ProcessRequest etc.
HTTP Handler
HTTP Handler is the process which runs in response to a HTTP
request. So whenever user requests a file it is processed by the handler based
on the extension. So, custom http handlers are created when you need to special
handling based on the file name extension. Let's consider an example to create
RSS for a site. So, create a handler that generates RSS-formatted XML. Now bind
the .rss extension to the custom handler.
HTTP Modules
HTTP Modules are plugged into the life cycle of a request.
So when a request is processed it is passed through all the modules in the
pipeline of the request. So generally http modules are used for:
Security: For
authenticating a request before the request is handled.
Statistics and Logging:
Since modules are called for every request they can be used for gathering
statistics and for logging information.
Custom header: Since response can be modified, one can add
custom header information to the response.
It's just like a filter. The Modules are called before and after the handler executes.
For example: BeginRequest, AuthenticationRequest event, EndRequest event etc. You may intercept , participate and modify each request.
Modules implement the IHttpMudule interface located in the System.Web.System.
2, HTTPHandler:
You may think it as a program.(or handler, or module), it execute some code when the user send some request. An .aspx page can be thought as a HTTPHandler too, which implements more functions.
No comments:
Post a Comment