您的位置:首页 > 理论基础 > 计算机网络

HttpHandler一般处理程序的简单使用

2017-10-16 15:23 597 查看

概述

HttpHandler是一个HTTP请求的真正处理中心,也正是在这个HttpHandler容器中,ASP.NET  Framework才真正地对客户端请求的服务器页面做出编译和执行,并将处理过后的信息附加在HTTP请求信息流中再次返回到HttpModule中。


IHttpHandler是什么

IHttpHandler在MSDN中的定义:使用自定义的HTTP处理程序同步处理HTTP Web请求而实现的协定。(注意:如果是异步的话就要使用IHttpAsyncHandler接口)
IHttpHandler定义了如果要实现一个HTTP请求的处理所必需实现的一些系统约定。HttpHandler与HttpModule不同,一旦定义了自己的HttpHandler类,那么它对系统的HttpHandler的关系将是“覆盖”关系。
IHttpHandler包含一个属性IsReusable,用于获取当前IHttpHandler实例是否可用,一般设置为true;一个方法ProcessRequest(HttpContext context),进行实际的操作过程。


IHttpHandler如何处理HTTP请求

当一个HTTP请求经过HttpModule容器传递到HttpHandler容器中时,ASP.NET Framework会调用HttpHandler的ProcessRequest成员方法来对这个HTTP请求进行真正的处理。


流程图



httpHandlers结点中各属性意义



Verb属性

指定了处理程序支援的HTTP动作。“*”支持所有的HTTP动作;“GET”支援Get操作;“POST”支援Post操作;“GET, POST”支援两种操作

Path属性

指定了需要调用处理程序的路径和文件名(可以包含万用字元).“”、“.aspx”

Type属性

用名字空间、类名称和程序集名称的组合形式指定处理程序或处理程序工厂的实际类型. ASP.NET运行时首先搜索bin目录中的DLL,接着在GAC中搜索

Web.Config中的配置



选择泛型处理常式,然后输入名称,如图所示:



创建档之后所看到的原始代码,如图所示:



IRequiresSessionState,讀取Session值所用接口; context.Response.Write(“Hello World”) 返回值



学习资料

1.1 ASP.NET中的異步 HttpHandler實現

http://www.hello-code.com/blog/asp.net/201512/5793.html

1.2 HttpHandler的認識與加深理解

http://www.cnblogs.com/whtydn/archive/2009/10/19/1585778.html

1.3 什麼是HttpHandler

http://www.studyofnet.com/news/378.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  asp.net