HTTP模块和HTTP处理程序

时间:2010-01-20 16:21:00

标签: asp.net http authentication authorization httphandler

什么是HTTP模块和HTTP处理程序以及它们在页面请求时如何工作?身份验证和授权过程如何在ASP.NET中工作?

2 个答案:

答案 0 :(得分:2)

身份验证和授权是Http Pipeline上的事件。您可以通过进行配置更改和实现IHttpModule接口来挂钩这些模块并执行一些自定义身份验证/授权

来自msdn

  

ASP.NET HTTP处理程序是进程   (经常被称为   “终点”)运行以响应a   对ASP.NET Web的请求   应用

因此,当IIS收到“.aspx”文件的请求时,它会告诉aspnet进程处理它。您可以配置自己的处理程序,并通过实现IHttpHandler接口告诉如何处理请求。

Here是Rikh Strahl的一个很好的低级解释。看看this diagram,你可以更好地理解它们。

google search可以为您提供很多结果,但您可以通过实施它来学习:)。这是一个example。快乐的编码。

答案 1 :(得分:0)

HTTP处理程序是ASP.NET管道中的终点对象,HTTP处理程序实质上处理请求并生成响应。例如,ASP.NET页面是HTTP处理程序。

HTTP模块是也参与管道的对象,但它们在HTTP处理程序完成其工作之前和之后工作,并在管道中生成其他服务(例如,在HTTP处理程序执行之前关联请求中的会话,并保存会话状态在HTTP处理程序完成其工作之后,基本上由HTTP模块完成,SessionStateModule)