本文从 SwitchData 项目提取一套轻量级权限方案:通过 NoPermissionAttribute 实现控制器默认拒绝,PermissionAttribute 完成方法级权限码校验,再用自定义 IFilterProvider 精确控制过滤器执行顺序,适合按钮级、动态变化的细粒度权限场景。
标签: #中间件
本文从 SwitchData 项目提取 DisplayLoggingMiddleware,讲解如何在 ASP.NET Core 中手写请求日志中间件,实现接口耗时统计、状态码分级日志与异常追踪。通过 Endpoint 元数据读取菜单名称、Stopwatch 精确计时、静态文件过滤等技巧,不到 70 行代码即可构建生产级请求监控能力。
通过自定义 ASP.NET Core 中间件拦截 HTTP 响应管道,将业务返回值统一包装为标准 JSON 格式(包含 code、msg、data 字段),并集中处理异常与状态码映射,避免每个 Action 重复封装响应结构。
讲解如何通过 IStartupFilter 在 ASP.NET Core 启动阶段自动包装中间件管道,实现框架级自动注入(如预热、健康检查、统一前处理),而无需用户显式调用 UseXxx。
1 / 1