ASP.NET中的HTTP模块和处理程序(5)
点击次数:29 次 发布日期:2008-11-26 14:47:31 作者:源代码网
|
源代码网推荐 源代码网推荐 当我们建立了HTTP模块并把它复制到Web应用程序的bin目录或者全局部件缓冲(Global Assembly Cache)之后,接下来就应该在web.config或machine.config中注册它了。 源代码网推荐 源代码网推荐 我们可以使用<httpModules>和<add>节点把HTTP模块添加到Web应用程序中。实际上模块都使用<add>节点列举在<httpModules>和</httpModules>节点之内了。 源代码网推荐 源代码网推荐 因为配置设置信息是可以继承的,所以子目录从父目录那儿继承配置设置信息。其结果是,子目录可能继承了一些不需要的HTTP模块(它们是父配置信息的一部分);因此,我们需要一种删除这些不需要的模块的方法。我们可以使用<remove>节点;如果我们希望删除从应用程序继承得到的所有HTTP模块,可以使用<clear>节点。 源代码网推荐 源代码网推荐 下面的代码是添加HTTP模块的一个通用示例: 源代码网推荐 源代码网推荐 <httpModules> 源代码网推荐 <add type="classname, assemblyname" name="modulename" /> 源代码网推荐 <httpModules> 源代码网推荐 源代码网推荐 下面的代码是从应用程序中删除HTTP模块的一个通用示例: 源代码网推荐 源代码网推荐 <httpModules> 源代码网推荐 <remove name="modulename" /> 源代码网推荐 <httpModules> 源代码网推荐 源代码网推荐 在上面的XML中: 源代码网推荐 源代码网推荐 · Type属性用类和部件名称的形式指定了HTTP模块的实际类型。 源代码网推荐 源代码网推荐 · Name属性指定了模块的友好名称。其它应用程序可以使用这个名称来识别HTTP模块。 源代码网推荐 源代码网推荐 ASP.NET运行时如何使用HTTP模块 源代码网推荐 源代码网推荐 ASP.NET运行时使用HTTP模块实现某些特殊的功能。下面的片段来自于machine.config文件,它显示了ASP.NET运行时安装的HTTP模块: 源代码网推荐 源代码网推荐 <httpModules> 源代码网推荐 <add name="OutputCache" type="System.Web.Caching.OutputCacheModule"/> 源代码网推荐 <add name="Session" type="System.Web.SessionState.SessionStateModule"/> 源代码网推荐 <add name="WindowsAuthentication" 源代码网推荐 type="System.Web.Security.WindowsAuthenticationModule"/> 源代码网推荐 <add name="FormsAuthentication" 源代码网推荐 type="System.Web.Security.FormsAuthenticationModule"/> 源代码网推荐 <add name="PassportAuthentication" 源代码网推荐 type="System.Web.Security.PassportAuthenticationModule"/> 源代码网推荐 <add name="UrlAuthorization" 源代码网推荐 type="System.Web.Security.UrlAuthorizationModule"/> 源代码网推荐 <add name="FileAuthorization" 源代码网推荐 type="System.Web.Security.FileAuthorizationModule"/> 源代码网推荐 </httpModules> 源代码网推荐 源代码网推荐 ASP.NET使用上面一些HTTP模块来提供一些服务,例如身份验证和授权、对话管理和输出缓冲。由于这些模块都注册在machine.config文件中。 源代码网推荐 做人要厚道,请注明转自酷网动力(www.ASPCOOL.COM)。 源代码网推荐 源代码网供稿. |
