ASP.NET:响应中的全局钩子?

时间:2009-11-14 03:06:37

标签: asp.net javascript

有没有办法拦截所有ASPX页面响应?我想拦截所有服务的页面,并在每个页面的末尾注入一个小的JavaScript。

3 个答案:

答案 0 :(得分:3)

是的,您可以使用HttpModule执行此操作。

http://aspnetresources.com/articles/HttpFilters.aspx

        /// <summary>
    /// Init is required from the IHttpModule interface
    /// see http://aspnetresources.com/articles/HttpFilters.aspx
    /// </summary>
    /// <param name="Appl"></param>
    public void Init(System.Web.HttpApplication app)
    {
        // Wire up the Response filter
        app.ReleaseRequestState += new EventHandler(InstallResponseFilter);

    }

答案 1 :(得分:0)

这篇文章也许(你的javascript可以在页脚内): Add a header and footer control to all web pages in a web application, using HTTP module

摘录:

  

开发演示时   网络应用程序,我们通常遵循一个   所有网络的模板结构   页面。模板通常包含   某种公司标识和   在标题部分导航,和   一些法律信息和联系信息   页脚部分等HTML   这些页眉和页脚的代码   部分通常是相同的   整个网站,可能   因此需要复制和粘贴   在每个网页中。避免   页眉和页脚的HTML代码   部分被复制到整个   在这里,我们使用“include”指令   包含一大块HTML代码   每一页。

答案 2 :(得分:0)

添加页脚有多种方法,具体取决于您的要求的详细信息:

  1. 一个HttpModule。根据HttpModule的注册方式,您可能需要在输出中检查text / html MIME类型,以确保您正在处理HTML页面。
  2. 常见的页面基类。
  3. 绑定到所有页面的PageAdapter。
  4. 绑定到所有页面的母版页。