【问题标题】:Disable middleware for one action为一项操作禁用中间件
【发布时间】:2018-05-15 12:43:43
【问题描述】:

我创建了一个检查某些标头的中间件(IMiddleware 实现)。它工作正常,但我需要为一项操作禁用它。我知道我可以解析 url 但还有其他方法吗?我尝试按属性标记操作,但中间件中不可用此数据。

【问题讨论】:

  • 在那个低级别,您只需要解析 URL。
  • 所以我应该使用 IActionFilter 吗? :(

标签: asp.net-core middleware


【解决方案1】:

您可以在 ASP.NET Core 中使用基于请求的条件中间件

这就是你可以实现的方式

app.UseMiddlewareOne();

app.MapWhen(context => context.Request.Path.StartsWithSegments("/api"), appBuilder =>
{
    appBuilder.UseMiddlewareTwo();
});

app.UseMiddlewareThree();

【讨论】:

  • 感谢您的回答,但“我知道我可以解析 url 但还有其他方法吗?”
  • @Serg046 必须等待其他人:D
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-12-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多