确定HttpModule主/调用请求

时间:2008-11-10 23:14:11

标签: httpmodule

有没有办法知道httpmodule中的主/呼叫请求?我只希望我的模块代码运行主aspx页面,而不是图像和脚本。我可以检查“.aspx”的路径,但似乎应该有更好的方法。

2 个答案:

答案 0 :(得分:4)

从您的模块中,您可以调用HttpContext.Current.Handler并查看它是否是Page。您可能必须在PostMapRequestHandler事件或生命周期中的后续事件中执行此操作。

或者,也许您可​​以检查哪个HttpHandlerFactory用于请求。如果它是PageHandlerFactory,您可以运行您的逻辑,否则您可以跳过它。

答案 1 :(得分:0)

IIS不会在图像和脚本*上调用ASP.NET处理程序,因此HTTPModule应该只在ASPX请求上运行。

  • 除非您的意思是作为嵌入式资源提供的脚本,即webresource.axd。