最火下载站首页
手机版
最火下载站
关注公众号
最火下载站

当前位置:首页 > 网络知识 > 网络编程 > ASP.NET> Asp.Net之HTTP Module和HTTP Handler

Asp.Net之HTTP Module和HTTP Handler

文章作者:网友投稿 发布时间:2009-01-05 来源:网络

在新窗口中预览图片
上图描述了Asp.Net中数据是如何流动的:
  HttpRuntime将Http请求转交给 HttpApplication,HttpApplication代表着程序员创建的Web应用程序。HttpApplication创建针对此Http 请求的 HttpContext对象,这些对象包含了关于此请求的诸多其他对象,主要是HttpRequest、HttpResponse、 HttpSessionState等。这些对象在程序中可以通过Page类或者Context类进行访问。

  接下来Http请求通过一系列Module,这些Module对Http请求具有完全的控制权。这些Module可以做一些执行某个实际工作前的事情。

  Http请求经过所有的Module之后,它会被HttpHandler处理。在这一步,执行实际的一些操作,通常也就是.aspx页面所完成的业务逻辑。可能你会觉得在创建.aspx页面并没有体会到这一过程,但是,你一定知道,.aspx 页面继承自Page类,我们看一下Page类的签名:

以下为引用的内容:

public class Page : TemplateControl, IHttpHandler{

// 代码省略

}

  可以看到,Page类实现了IHttpHandler接口,HttpHandler也是Http请求处理的最底层。

  HttpHandler处理完以后,Http请求再一次回到Module,此时Module可以做一些某个工作已经完成了之后的事情。

  如果我们将注意力只集中在Http请求、HttpHandler和HttpModule上,不去考虑HttpContext和HttpApplication,那么上图可以简化成下面这样: 

在新窗口中预览图片

 

上一篇: asp.net中Web.config文件各属性详解

下一篇: asp.net gridview.findcontrol的问题

共有0条评论网友评论

游戏排行榜