惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

罗磊的独立博客
U
Unit 42
N
Netflix TechBlog - Medium
人人都是产品经理
人人都是产品经理
Hugging Face - Blog
Hugging Face - Blog
腾讯CDC
小众软件
小众软件
V
Visual Studio Blog
T
Tailwind CSS Blog
Engineering at Meta
Engineering at Meta
博客园 - 叶小钗
GbyAI
GbyAI
爱范儿
爱范儿
雷峰网
雷峰网
Microsoft Azure Blog
Microsoft Azure Blog
D
DataBreaches.Net
博客园_首页
D
Docker
A
About on SuperTechFans
G
Google Developers Blog
I
InfoQ
T
The Blog of Author Tim Ferriss
V
V2EX
博客园 - Franky

博客园 - 沸石

快速压缩log文件 SQL Server-拆分字符串返回表(存储过程) ASHX 生成excel文件 SQL Server-动态Pivot表的存储过程 突破AD查询1000条限制(转) 轻松创建运行命令 (转) (转)Resolving errors creating a Strong Name Key 以动词开头的习惯搭配:转 枚举的遍历和字符串转枚举,枚举转字符串 转 - 沸石 - 博客园 (转)英语信件中最常用精选句式 控件命名 转:C#委托及事件 js:scrollLeft,scrollWidth,clientWidth,offsetWidth完全详解 商业书信英语-常用结束语 SQL中合并多行记录的方法总汇 C# 中的字符串函数及应用举例(转) 转:YetAnotherForum集成AD用户混合登录(一) AD验证类 - 沸石 - 博客园 英文函电书写基本原则 SQL Server 2005之PIVOT/UNPIVOT行列转换
转:关于HttpHandlers和HttpModules的不同
沸石 · 2009-06-22 · via 博客园 - 沸石

关于HttpHandlers和HttpModules的不同(2009-05-22 17:08:24)

当 IIS 接收一个请求时,根据 IIS 的设置将扩展映射到一个 ISAPI 筛选器。将 .ASPX、.asmx、.asd 和其他扩展映射到 ASPnet_isapi.dll,该 ASPnet_isapi.dll 只是一种启动 ASP.NET 运行库的 ISAPI 筛选器。一旦请求到达 ASP.NET 运行库,它在 HTTPApplication 对象处启动,该对象担当 ASP.NET Web 应用程序的宿主。HTTPApplication 对象:
1.
读取机器级和应用程序级的配置文件。
2.
通过一个或多个 HTTPModule 实例传递请求。每个 HTTPModule 提供一种服务,例如会话维护、身份验证,或配置文件维护。这些模块将请求传递回 HTTPApplication。
3.
根据谓词和路径将请求传递给 HTTPHandler。谓词指请求中使用的 HTTP 谓词(GET、POST、FTP,等等),而路径指应用程序中的 URL。根据处理程序的配置方式,该请求可能作为一个 ASP.NET 页(System.Web.UI.Page 为 IHTTPHandler 的一种实现)加以处理,或者该请求可能触发另一个操作,例如批编译所有的 Web 页(precomiplation.asd 触发 PrecompHandler)。
在 ASP.NET 2.0 中,该模型没有变化,但是,添加了几种新模块和处理程序以提供其他的服务。与 ASP.NET 1.x 一样,您可以扩展、替换或重新配置任何模块或处理程序类,以提供自己的自定义功能。
从这里可以看到,
httpModules只从功能性方面出发来触发事件.
而httpHandler从访问方式及访问文件后缀来触发事件.