gpt4 book ai didi

c# - 始终执行条件中间件

转载 作者:行者123 更新时间:2023-11-30 15:14:20 24 4
gpt4 key购买 nike

我已将自定义中间件添加到我的 ASP.NET Core Web-API 2.1 应用程序中,它只需要针对某些请求执行。问题是,它总是在管道中执行。

Startup.cs

app.UseWhen(context => context.Request.Path.Value.Contains("AWS"), appBuilder =>
{
app.UseMiddleware<ValidateHeaderHandler>();
});

上面的代码完全忽略了条件并始终执行 ValidateHeaderHandler 中间件。

最佳答案

您需要在 appBuilder 对象上调用 UseMiddleware() 方法,而不是直接在 app 上调用:

app.UseWhen(context => context.Request.Path.Value.Contains("AWS"), appBuilder =>
{
appBuilder.UseMiddleware<ValidateHeaderHandler>();
});

关于c# - 始终执行条件中间件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55045821/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com