gpt4 book ai didi

ASP.NET:将内容注入(inject)所有响应流

转载 作者:行者123 更新时间:2023-12-04 20:25:17 26 4
gpt4 key购买 nike

我们的站点中有数百个 ASPX 和 HTML 文件,并且希望在每个文件的末尾注入(inject)一个小的 JavaScript。如果我想使用 HttpModule (尝试学习新东西)来做到这一点,这样做会 - 有任何明显的问题吗?

public void Init(HttpApplication context)
{
context.BeginRequest += new EventHandler(context_BeginRequest);
}

void context_BeginRequest(object sender, EventArgs e)
{
var context = HttpContext.Current;

if (!isAspxOrHtmlFile(context.Request.Path)
{
return;
}

var javascript = ...

using (var writer = new StringWriter())
{
context.Server.Execute(context.Request.Path, writer);
context.Response.ContentType = "text/html";
context.Response.Write(writer.GetStringBuilder().ToString() + javascript);
}

context.Response.End();
}

最佳答案

您可能知道简单的方法是在您的网站母版页文件中使用静态自定义用户控件,就像旧的 SSI 包含文件一样,对吧?

关于 HttpModule,您应该注意不是 HTML 的内容,但您似乎已经使用 isAspxOrHtmlFile() 删除了它。 .对我来说似乎很好。

关于ASP.NET:将内容注入(inject)所有响应流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1743772/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com