Asp.net中的HttpModule和HttpHandler的简单用法
生活随笔
收集整理的這篇文章主要介紹了
Asp.net中的HttpModule和HttpHandler的简单用法
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
在Asp.net中,HttpModule和HttpHandler均可以截取IIS消息進(jìn)行處理,這使得我們制作人員能夠非常方便的進(jìn)行諸如圖片水印添加,圖片盜鏈檢查等功能。
下面先就HttpModule的使用方法進(jìn)行簡(jiǎn)單說(shuō)明:
using System;using System.Web;
namespace MyWebApp
{
public class MyHttpModule:IHttpModule
{
public void Init(HttpApplication application)
{
application.BeginRequest+=new EventHandler(application_BeginRequest);
}
public void application_BeginRequest(object sender, EventArgs e)
{
HttpContext context = (sender as HttpApplication).Context;
context.Response.Write("這一部分是由HttpModule添加!<br><script>alert('測(cè)試腳本標(biāo)簽')</script>");
}
#region IHttpModule 成員
void IHttpModule.Dispose()
{
throw new NotImplementedException();
}
#endregion
}
}
需要說(shuō)明的是,使用HttpModule的時(shí)候需要繼承自IHttpModule接口,然后需要實(shí)現(xiàn)Dispose成員。需要注意一點(diǎn)的是,這些操作還得在web.config中進(jìn)行配置,才能夠正常使用:
<!--下面這里是添加的自定義的HTTPModule--><add name="MyHttpModule" type="MyWebApp.MyHttpModule"/>
而對(duì)于HttpHandler,則需要繼承自IHttpHandler接口,并且也需要在web.config中進(jìn)行注冊(cè):
using System.Web;using System.Web.Services;
namespace MyWebApp
{
/// <summary>
/// $codebehindclassname$ 的摘要說(shuō)明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class MyHttpHandler : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
context.Response.Write("這一部分是由HttpHandler添加!");
}
public bool IsReusable
{
get
{
return false;
}
}
}
}
在web.config中的注冊(cè)如下:
<!--下面是添加的自定義HTTPHandler--><add verb="*" path="*.aspx" type="MyWebApp.MyHttpHandler"/>
希望對(duì)你有用。
總結(jié)
以上是生活随笔為你收集整理的Asp.net中的HttpModule和HttpHandler的简单用法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 有关技术管理的一些思考
- 下一篇: 光驱读盘不正常