什么时候写处理程序或模块..任何例子?

时间:2011-01-28 21:33:31

标签: iis httphandler httpmodule

我已经阅读了这些但仍然混淆了我将编写http处理程序而不是http模块(反之亦然)的用例。每个用例的一些示例将有所帮助

2 个答案:

答案 0 :(得分:1)

<强> HTTP Handlers and HTTP Modules Overview

  

自定义HTTP处理程序的典型用法包括:

     
      
  • RSS提要要为网站创建RSS提要,您可以创建一个发出RSS格式的XML的处理程序。然后,您可以将文件扩展名(如.rss)绑定到自定义处理程序。当用户向您的站点发送以.rss结尾的请求时,ASP.NET会调用您的处理程序来处理请求。

  •   
  • 图像服务器如果您希望Web应用程序提供各种大小的图像,您可以编写自定义处理程序来调整图像大小,然后将其作为处理程序的响应发送给用户

  •   
     

HTTP模块的典型用途包括:

     
      
  • 安全性由于您可以检查传入的请求,因此HTTP模块可以在调用请求的页面,XML Web服务或处理程序之前执行自定义身份验证或其他安全检查。在以集成模式运行的Internet信息服务(IIS)7.0中,您可以将表单身份验证扩展到应用程序中的所有内容类型。

  •   
  • 统计信息和日志记录由于每个请求都会调用HTTP模块,因此您可以在集中模块中收集请求统计信息和日志信息,而不是在单个页面中收集。

  •   
  • 自定义页眉或页脚因为您可以修改传出响应,所以可以将自定义标题信息等内容插入到每个页面或XML Web服务响应中。

  •   

答案 1 :(得分:0)

HTTP处理程序就像一个ASPX页面。在web.config中注册了一个处理程序,以响应特定的URL,例如“* .css”或“MyHandler.xyz”。

HTTP模块处理所有请求。如果您需要在处理程序开始处理之前处理所有请求的内容,那么您需要一个HTTP模块。安全性和缓存是使用模块的主要示例。