ASP.NET运行机制(三)--使用HttpHandler,处理对aspx页面的请求
程序员文章站
2024-02-28 09:59:58
...
最近了解了HttpHandler的基本原理后,制作了一个简单的案例。
项目的目录如图:
一、在App_Code文件夹里创建TestHttpHandler类,并实现IHttpHandler接口。
namespace HttpHandler_Demo.App_Code
{
public class TestHttpHandler : IHttpHandler
{
//public bool IsReusable => throw new NotImplementedException();
public bool IsReusable
{
get { return false; }
}
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/html";
context.Response.Write("<h2>HttpHandler是每一个请求的真正处理中心</h2>");
}
}
}
二、为Web.config文件添加配置节点
<!--配置节点-->
<system.webServer>
<handlers>
<!--type="命名空间.类名"-->
<add verb="*" path="Admin/*.aspx" name="handler" type="HttpHandler_Demo.App_Code.TestHttpHandler"/>
</handlers>
</system.webServer>
三、添加Admin文件夹,并在里面添加Default.aspx页面。
<body>
<form id="form1" runat="server">
<div></div>
</form>
</body>
看下运行后的效果:
四、还有一种方式,使用一般处理程序来完成的
创建一个Handler.ashx一般处理程序。
namespace HttpHandler_Demo
{
/// <summary>
/// Handler 的摘要说明
/// </summary>
public class Handler : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
context.Response.Write("Hello World,这是一个一般处理程序");
}
public bool IsReusable
{
get
{
return false;
}
}
}
}
再看下这个的运行效果: