asp.net httpmodule 拦截器 使用

1, 在App_Code中添加类, 继承自 IHttpModule.并实现接口

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using TF.CommonUtility;
/// <summary>
/// PayModuler 的摘要说明
/// </summary>
public class PayModuler : IHttpModule
{
    public void Dispose()
    {
       
    }
    public void Init(HttpApplication context)
    {
        context.BeginRequest += new EventHandler(context_BeginRequest);
    }
    void context_BeginRequest(object sender, EventArgs e)
    {
        HttpApplication httpApp = (HttpApplication)sender;
        //这里进行业务逻辑
        if (httpApp.Request.RawUrl.ToLower().Contains("success.html"))  //js和css文件排除
        {
            LogClass.log("这是成功页面:"+ httpApp.Request.RawUrl);
        }
        else if (httpApp.Request.RawUrl.ToLower().Contains("failed.html"))
        {
            LogClass.log("这是失败页面:" + httpApp.Request.RawUrl);
        }
    }
}

2.在Web.config的 system.webServer 节点中添加配置

<modules>
    <add name="myHttpModule" type="PayModuler"/>
</modules>