错误处理中间件 VS 异常过滤器 net Core

错误处理中间件 VS 异常过滤器

现在,我们已经介绍了两种错误处理的方法------错误处理中间件和异常过滤器。现在来比较一下它们的异同,以及我们何时应该选择哪种处理方式。

错误处理中间件:

可以捕获后续中间件的所有未处理异常

拥有RequestDelegate,操作更加灵活

粒度较粗,仅可针对全局进行配置

错误处理中间件适合用于处理全局异常。

异常过滤器:

仅可捕获Controller创建时(也就是构造函数中抛出的异常)、模型绑定、Action Filter和Action中抛出的未处理异常,其他地方抛出的异常捕获不到

粒度更小,可以灵活针对Controller或Action配置不同的异常过滤器

异常过滤器非常适合用于捕获并处理Action中的异常。

在我们的应用中,可以同时使用错误处理中间件和异常过滤器,只有充分发挥它们各自的优势,才能处理好程序中的错误

相关推荐
ErizJ13 分钟前
Go 微服务框架 | 中间件
微服务·中间件·golang
唐人街都是苦瓜脸1 天前
Kafka和RocketMQ相比有什么区别?那个更好用?
分布式·中间件·kafka·rocketmq
还是鼠鼠2 天前
Node.js局部生效的中间件
javascript·vscode·中间件·node.js·json·express
爱的叹息3 天前
数据库分库分表中间件及对比
数据库·中间件
和尚用0飘柔03 天前
【中间件】使用ElasticSearch提供的RestClientAPI操作ES
大数据·elasticsearch·中间件
还是鼠鼠3 天前
Node.js自定义中间件
javascript·vscode·中间件·node.js·json·express
还是鼠鼠5 天前
Node.js中间件的5个注意事项
javascript·vscode·中间件·node.js·json·express
ChinaRainbowSea6 天前
1. 初始 RabbitMQ 消息队列
java·中间件·rabbitmq·java-rabbitmq
还是鼠鼠7 天前
Node.js全局生效的中间件
javascript·vscode·中间件·node.js·json·express
@PHARAOH7 天前
WHAT - 如何理解中间件
中间件