Global.asax vs IhttpHandler for webservice?

本文关键字:webservice for IhttpHandler asax vs Global | 更新日期: 2023-09-27 17:56:03

我目前正在使用自定义的IHttpHandler类来解析请求和发回响应。使用任何 global.asax 方法有什么好处吗?

Global.asax vs IhttpHandler for webservice?

你到底想做什么?

当您想要精确控制HTTP请求/响应时,IHttpHandler很有用,但是通常在开发框架时 - 大多数情况下,可以在其他地方实现相同的操作。

IHttpHandler当然不常用于 Web 服务,因为您应该考虑使用 WCF 或使用 ASP.Net Web 服务(如果您的目标是 WCF 不可用的 .Net 2.0 框架)。 使用专用的 Web 服务工具集将更容易以一致的方式公开您的服务(通过 SOAP、JSON 等)。

我不太确定global.asax是如何进入它的 - global.asax是,嗯......全球。 您在此处执行的任何操作都将应用于整个 Web 应用程序,因此,特别是您在此处执行的任何请求处理都将应用于到达应用程序的所有请求。 这不是您应该实现 Web 服务的地方。

如果你的意思是 HttpApplication 事件与 IHttpHandler,它们并不是真正的可比性。

HttpApplication 事件通常从 IHttpModules 用于(原则上)适用于所有 HTTP 请求的横切关注点。

这个问题解释了IHttpModule和IHttpHandler之间的区别