如何确定特定路由/路径是否需要授权/身份验证?



我正在编写一个中间人,我希望它在路径不需要身份验证时不要运行。是否有可能以简单的方式在 ASP.NET 核心中了解这一点?(无需通过自省读取控制器函数的属性(

谢谢。

在中间件的公共任务调用方法中,您始终可以检查是否要进入管道中的下一个级别。

例如

public Task Invoke(HttpContext context)
{
// If the request path doesn't match, skip
if (!context.Request.Path.Equals(_options.Path, StringComparison.Ordinal))
{
return _next(context);
}
}

return_next(上下文(只是跳过这个中间件完全进入管道的下一阶段。 您可以在此处放置自定义逻辑,具体取决于您要执行的操作。

最新更新