为什么我们需要 Http 处理程序?

Inf*_*ner 4 c# asp.net iis

我知道 http 处理程序处理请求,但这只是理论,因为我不理解。许多 3rd 方控件需要在 web.config 中添加 http 处理程序。有时我们需要使用实现 IHttpHandler 接口的 ProcessRequest 方法创建我们自己的类,但我很困惑不明白 Http 处理程序在哪里适合以及它们的作用是什么?

Mar*_*ell 5

Http 处理程序是 ASP.NET 的重要组成部分 - 它们处理请求并生成响应。在网络表单,它是典型页面(ASPX,也许ashx的)解释的请求,但是这是自己一个类型的处理程序(只是默认情况下在主web.config文件映射)。

在向配置文件添加处理程序的情况下,这通常是因为应用程序正在为 url 动态生成内容,这些 url不会神奇地映射到现有文件,或者为确实存在但超出常规 asp 的文件添加一些逻辑。网。

如果您使用的是 ASP.NET MVC,您往往需要的更少(如果有的话),因为请求不直接映射到源树中的 aspx/ashx是常态

回想一下 ASP.NET webforms,我使用处理程序的主要时间是在执行二进制下载、文件导出等操作时 - 我真的不希望它通过 webforms aspx 管道运行。