.net – 排除某些页面使用HTTPModule

有没有办法排除某些网页使用HTTP模块?

我有一个使用自定义HTTP模块验证会话的应用程序. HTTPModule在Web配置中如此设置:

<system.web>
  <!-- ... -->
  <httpModules>
    <add name="SessionValidationModule"
       type="SessionValidationModule,SomeNamespace" />
  </httpModules>
</system.web>

要从页面中排除模块,我尝试这样做(没有成功):

<location path="ToBeExcluded">
  <system.web>
    <!-- ... -->
    <httpModules>
      <remove name="SessionValidationModule" />
    </httpModules>
  </system.web>
</location>

有什么想法吗?

解决方法

您可以使用HTTPHandler而不是HTTPModule.处理程序让您在Web.Config中声明路径时指定路径.
<add verb="*" path="/validate/*.aspx" type="Handler,Assembly"/>

如果您必须使用HTTPModule,您可以检查请求的路径,如果是要排除的路径,请绕过验证.

相关文章

这篇文章主要讲解了“WPF如何实现带筛选功能的DataGrid”,文...
本篇内容介绍了“基于WPF如何实现3D画廊动画效果”的有关知识...
Some samples are below for ASP.Net web form controls:(fr...
问题描述: 对于未定义为 System.String 的列,唯一有效的值...
最近用到了CalendarExtender,结果不知道为什么发生了错位,...
ASP.NET 2.0 page lifecyle ASP.NET 2.0 event sequence cha...