using LFlow.Base.Utils; using LFlow.Middleware; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Routing; using Newtonsoft.Json; using Serilog; namespace LFlow.UserManagement { public class UserMiddleware(ILogger logger) : ILFlowMiddleware { public int Priority => 1; public async Task RunAsync(Microsoft.AspNetCore.Http.HttpContext context, Func next) { // Do something before var progController = context.GetRouteData()?.Values["controller"]?.ToString(); var progAction = context.GetRouteData()?.Values["action"]?.ToString(); if (progAction != "ListAll") await next(); else { await context.Response.WriteAsync(JsonConvert.SerializeObject(ApiResult.FailResult("无权限!", 100501))); } // Do something after } } }