我有用于URL加密的HttpModule;我注意到这个模块也拦截了MVC捆绑请求;即使我使用以下设置:
<modules runAllManagedModulesForAllRequests="false">
<add ..preCondition="managedHandler" />
</modules>
有没有办法绕过来自HttpModule的MVC捆绑请求的拦截?
答案 0 :(得分:1)
因此,为了忽略httpmodule中的某些路由,您可以使用Application_BeginRequest或Application_EndRequest,请执行以下示例,忽略aspx页面或检查您要忽略的路径
示例:
private void Application_BeginRequest(Object source, EventArgs e)
{
HttpApplication application = (HttpApplication)source;
HttpContext context = application.Context;
string filePath = context.Request.FilePath;
string fileExtension = VirtualPathUtility.GetExtension(filePath);
if (fileExtension.Equals(".aspx"))
{
return;
}
}
但是如果你的功能与某些应用程序模块有关,我建议使用Filters
(MVC sepcific和模块)而不是HttpModules
(特定于完整应用程序)。