ASP.NET中的HttpHandler是什么?为什么以及如何使用它?
简单来说,ASP.NET HttpHandler是一个实现System.Web.IHttpHandler
接口的类.
ASP.NET HTTPHandler负责拦截对ASP.NET Web应用程序服务器发出的请求.它们作为响应对ASP.NET站点发出的请求的进程运行.最常见的处理程序是处理.aspx文件的ASP.NET页面处理程序.当用户请求.aspx文件时,页面通过页面处理程序处理请求.
ASP.NET提供了一些默认的HTTP处理程序:
页面处理程序(.aspx):处理网页
用户控制处理程序(.ascx):处理Web用户控制页面
Web服务处理程序(.asmx):处理Web服务页面
跟踪处理程序(trace.axd):处理跟踪功能
您可以创建自己的自定义HTTP处理程序,以将自定义输出呈现给浏览器.例如,ASP.NET中HTTP处理程序的典型方案
交付动态创建的图像(例如图表)或调整大小的图片.
RSS源,发出RSS格式的XML
您实现了IHttpHandler
创建同步处理程序的IHttpAsyncHandler
接口和创建异步处理程序的接口.接口要求您实现ProcessRequest
方法和IsReusable
属性.
该ProcessRequest
方法处理所做请求的实际处理,而Boolean IsReusable
属性指定是否可以合并您的处理程序以便重用(以提高性能)或者是否每个请求都需要新的处理程序.
一个HttpHandler
(或IHttpHandler
)基本上是什么,它负责提供内容服务.ASP.NET页面(aspx)是一种处理程序.
例如,您可以编写自己的图像来从数据库而不是从Web服务器本身提供图像等,或编写简单的POX服务(而不是SOAP/WCF /等)