1、中间件 是处理请求和响应的组件(代码段,一段处理逻辑),这个处理逻辑是以“前一个请求处理逻辑”为输入,并经过中间件自己的处理后,返回一个“新的请求处理逻辑”,所以从代码上可将“中间件”表式为以一个“请求处理逻辑”为输入并返回另一个“请求处理逻辑”的委托,即Func<RequestDelegate,RequestDelegate> ;每一个中间件都可以决定是否继续进入下一个管道、并且可以在进入下一个管道前后执行逻辑;他们彼此链接,形成管道;
这样的机制使得HTTP请求能够很好的被层层处理和控制,并且层次清晰处理起来甚是方便。
最后一个管道或者中断管道的中间件叫终端中间件;
中间件的实现原理是通过委托
使用中间件有四种方法:Use、Run、Map和使用Middleware class,但前三种方法最终调用的都是Use方法
2、管道就是请求抵达服务器到响应结果返回的中间的一系列的处理过程
相关文章
- 01-01基于 abp vNext 和 .NET Core 开发博客项目 - 用AutoMapper搞定对象映射
- 01-01基于 abp vNext 和 .NET Core 开发博客项目 - 统一规范API,包装返回模型
- 01-01.net 工具集,支持.net fx和.net core
- 01-01.NET平台系列23:.NET Core/.NET5/.NET6 和 .NET Framework 的选择建议
- 01-01DotNet Core2.1 编写自己的中间件和后台服务
- 01-01.NET Core CSharp 中级篇 2-2 List,ArrayList和Dictionary
- 01-01.net core 注入中的三种模式:Singleton、Scoped 和 Transient
- 01-01基于 abp vNext 和 .NET Core 开发博客项目 - Blazor 实战系列(四)
- 01-01.Net Core 中使用NLog作为日志中间件
- 01-01基于 abp vNext 和 .NET Core 开发博客项目 - 集成Hangfire实现定时任务处理