了解ASP.NET 5中间件的实践用法

时间:2015-04-17 13:18:53

标签: .net middleware asp.net-core

这篇精彩的文章解释了有关ASP.NET 5 Middleware, Or Where Has My HttpModule Gone?

的内容

但目前尚不清楚我们何时以及为何必须使用 ASP.NET 5中间件

任何人都可以解释它并提供其使用的真实例子吗?

1 个答案:

答案 0 :(得分:5)

实际上非常简单。您将创建一个中间件来获取请求并决定:

  • 是否要处理它并将其传递给下一个中间件。
  • 是否要处理它,生成响应并在那里切断请求生命周期。

您还可以使用中间件来处理响应(例如,执行压缩的中间件)。

大多数中间件都提供交叉切割功能,例如路由,身份验证,压缩,错误处理。关于这些的一些现实世界的例子:

在这里可能存在一些混乱,例如MVC,SignalR等。以前在Katana世界中,每个框架都在创建每个自己的中间件以挂钩到系统中。在ASP.NET 5中,这有点不同。为了使框架能够处理请求,您可以通过提供特殊处理程序来挂钩路由中间件。例如,这是MVC 6 route handler。当您查看biuilder扩展时,您会看到MVC actually uses the routing middleware