【发布时间】:2011-03-22 17:36:26
【问题描述】:
我已经编写了自定义 HttpModule,它会在每次 RequestEnd 事件被触发时执行一些操作。
public void Init(HttpApplication context) {
context.EndRequest += EndEventHandler;
}
但我希望它仅在为请求 html 页面而触发 EndRequest 事件时才执行某些操作。不是在请求CSS 文件、图片或其他内容时。如何识别该特定请求中请求的内容类型,以便我决定要做什么?
注意:我想之前有人问过类似的问题,但我找不到它,如果可以的话,请添加到可能的重复项中。
编辑:更准确地说,如果该请求是由控制器操作处理的,我想在请求结束期间采取一些步骤(嗯,当我现在考虑它时,可能会调用操作过滤器对于所有操作都会比模块更好 - 是否有某种过滤器在返回重定向操作时不被调用?)。
【问题讨论】:
-
每次请求后你想做什么,为什么?这可能有助于我们确定是否有其他方式或更好的方式来实现您的最终目标。
-
@George Stocker 我正在将一些有关请求的数据保存到数据库以进行数据挖掘...就像浏览器一样,无论是经过身份验证的用户还是匿名用户...
-
@George Stocker 所以你认为有更好的方法吗?
-
达林已经发过了。
标签: c# asp.net asp.net-mvc httprequest httpmodule