using Microsoft.AspNetCore.Mvc.Authorization; using Microsoft.AspNetCore.Mvc.Controllers; using Microsoft.AspNetCore.Mvc.Filters; namespace Polly8Study.WebApi.Filters { /// /// 用户取消调用(刷新浏览器等)异常过滤器 /// public class OperationCancelledExceptionFilter : IAsyncExceptionFilter { public Task OnExceptionAsync(ExceptionContext context) { if (context.Exception is OperationCanceledException ex) { var controllerActionDescriptor = context.ActionDescriptor as ControllerActionDescriptor; //context.ActionDescriptor.ContrallerName; Console.WriteLine($"全局异常过滤器:{controllerActionDescriptor?.ControllerName}{controllerActionDescriptor?.ActionName} 请求,被用户取消!"); } return Task.CompletedTask; } } }