ASP.NET Core 中的筛选器

- 授权筛选器

筛选器的工作原理

筛选器在 ASP.NET Core 操作调用管道(有时称为筛选器管道)内运行。 筛选器管道在 ASP.NET Core 选择了要执行的操作之后运行:

筛选器类型

每种筛选器类型都在筛选器管道中的不同阶段执行:

授权筛选器:

首先运行。

确定用户是否获得请求授权。

如果请求未获授权,可以让管道短路。

资源筛选器:

授权后运行。

OnResourceExecuting 在筛选器管道的其余阶段之前运行代码。 例如,OnResourceExecuting 在模型绑定之前运行代码。

OnResourceExecuted 在管道的其余阶段完成之后运行代码。

操作筛选器:

在调用操作方法之前和之后立即运行。

可以更改传递到操作中的参数。

可以更改从操作返回的结果。

不可在 Razor Pages 中使用。

终结点筛选器:

在调用操作方法之前和之后立即运行。

可以更改传递到操作中的参数。

可以更改从操作返回的结果。

不可在 Razor Pages 中使用。

可以在操作和基于路由处理程序的终结点上调用。

异常筛选器

在向响应正文写入任何内容之前,对未经处理的异常应用全局策略。

结果筛选器:

在执行操作结果之前和之后立即运行。

仅当操作方法成功执行时才会运行。

对于必须围绕视图或格式化程序的执行的逻辑,会很有用

  参考:https://learn.microsoft.com/zh-cn/aspnet/core/mvc/controllers/filters?view=aspnetcore-7.0

相关文章!