繁体   English   中英

如何为将由PageHandlerFactory处理的ASP.NET中的每个请求添加事件处理程序

[英]How do I add an event handler for every request in ASP.NET that will be handled by PageHandlerFactory

我想配置一个asp.net网站,以便仅当请求将由PageHandlerFactory处理时, PageHandlerFactory每个请求执行我的事件处理程序(例如,跟踪/记录来自请求对象的某些信息)。

我知道我可以在Application_BeginRequest编写它,但是每种请求都会被调用(无论是* .axd,如果我在这里错了,请纠正我)。 HttpContext.Current.CurrentHandler可能为null,因此我不能为处理程序类型添加条件逻辑。 由于某种原因(旧业务规则/检查),我无法将逻辑移至Application_EndRequest

使用可以尝试在asp.net中使用httphandler and httpmodule

它有一个事件LogRequest

LogRequest-在ASP.NET对当前请求执行任何日志记录之前发生。 即使发生错误,也会引发LogRequest事件。 您可以为LogRequest事件提供事件处理程序,以为请求提供自定义日志记录。

在ASP.net中有更多信息

ASP.NET使用不同的HTTP处理程序来提供不同的文件类型。 例如,网页的处理程序创建页面和控件对象,运行您的代码,并呈现最终的HTML。 ASP.NET默认处理程序:

1)页面处理程序(.aspx)–处理Web页面2)用户控制处理程序(.ascx)–处理Web用户控制页面3)Web服务处理程序(.asmx)–处理Web服务页面4)跟踪处理程序(trace.axd) –处理跟踪功能

您可以在asp.net的httphandler和httpmodule上获得更多的见解。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM