当前位置: 首页 > news >正文

php ajax网站开发昆明网站建设天软科技

php ajax网站开发,昆明网站建设天软科技,成都专业网站制作多少钱,php 上传到网站在ASP.NET Core中#xff0c;Filter#xff08;过滤器#xff09;是一种强大的机制#xff0c;允许你在请求处理管道中的特定阶段运行代码。这些过滤器提供了在请求的不同阶段执行逻辑的能力#xff0c;比如授权、日志记录、异常处理等。ASP.NET Core 提供了多种类型的过滤…在ASP.NET Core中Filter过滤器是一种强大的机制允许你在请求处理管道中的特定阶段运行代码。这些过滤器提供了在请求的不同阶段执行逻辑的能力比如授权、日志记录、异常处理等。ASP.NET Core 提供了多种类型的过滤器每种类型都在请求处理管道的不同阶段运行。 以下是ASP.NET Core中主要的过滤器类型 授权过滤器Authorization Filters 在其他过滤器之前执行。用于确定用户是否被授权访问请求的资源。实现IAuthorizationFilter接口。 public class MyAuthorizationFilter : IAuthorizationFilter {public void OnAuthorization(AuthorizationFilterContext context){// 检查用户是否授权// 如果未授权可以设置 context.Result 来停止请求处理} }// 应用到控制器或动作方法 [ServiceFilter(typeof(MyAuthorizationFilter))] public class MyController : ControllerBase {// ... }资源过滤器Resource Filters 在模型绑定之后和动作过滤器之前执行。用于处理需要在模型绑定后但动作执行前运行的代码如缓存。实现IResourceFilter接口。也可以实现IAsyncResourceFilter接口以支持异步操作。 public class MyResourceFilter : IResourceFilter {public void OnResourceExecuting(ResourceExecutingContext context){// 在模型绑定之后动作执行之前运行}public void OnResourceExecuted(ResourceExecutedContext context){// 在动作执行之后结果执行之前运行} }// 应用到控制器或动作方法 [ServiceFilter(typeof(MyResourceFilter))] public class MyController : ControllerBase {// ... }动作过滤器Action Filters 在模型绑定和授权之后但在视图结果执行之前运行。用于查看或修改传入的动作参数、调用的动作本身或动作结果。实现IActionFilter接口。也可以实现IAsyncActionFilter接口以支持异步操作。 public class MyActionFilter : IActionFilter {public void OnActionExecuting(ActionExecutingContext context){// 在动作执行之前运行}public void OnActionExecuted(ActionExecutedContext context){// 在动作执行之后结果执行之前运行} }// 或者使用特性 [AttributeUsage(AttributeTargets.Class | AttributeTargets.Method)] public class MyActionFilterAttribute : Attribute, IActionFilter {// ... 实现与上面相同 }// 应用到控制器或动作方法 [MyActionFilter] public class MyController : ControllerBase {// ... }异常过滤器Exception Filters 当动作执行后发生未处理的异常时运行。用于处理未处理的异常并提供一个替代的HTTP响应。实现IExceptionFilter接口。 public class MyExceptionFilter : IExceptionFilter {public void OnException(ExceptionContext context){// 处理异常// 可以设置 context.Result 来提供替代的HTTP响应} }// 应用到控制器或动作方法 [ServiceFilter(typeof(MyExceptionFilter))] public class MyController : ControllerBase {// ... }结果过滤器Result Filters 在动作结果执行之后运行。用于查看或修改由动作方法返回的IActionResult。实现IResultFilter接口。也可以实现IAsyncResultFilter接口以支持异步操作。 public class MyResultFilter : IResultFilter {public void OnResultExecuting(ResultExecutingContext context){// 在结果执行之前运行}public void OnResultExecuted(ResultExecutedContext context){// 在结果执行之后运行} }// 应用到控制器或动作方法 [ServiceFilter(typeof(MyResultFilter))] public class MyController : ControllerBase {// ... }全局异常处理器Global Exception Handler 这并不是一个过滤器但它是ASP.NET Core中处理全局异常的一种机制。通过配置UseExceptionHandler中间件来处理全局未处理的异常。 中间件Middleware 虽然不是过滤器但中间件是ASP.NET Core中处理请求和响应的另一种机制。中间件在请求处理管道中运行并可以决定是否将请求传递给管道中的下一个组件或者是否直接发送响应给客户端。 public class ErrorHandlingMiddleware {private readonly RequestDelegate _next;public ErrorHandlingMiddleware(RequestDelegate next){_next next;}public async Task InvokeAsync(HttpContext httpContext){try{await _next(httpContext);}catch (Exception ex){// 处理异常并返回适当的响应await HandleExceptionAsync(httpContext, ex);}}private static Task HandleExceptionAsync(HttpContext context, Exception exception){// 写入响应体或其他错误处理逻辑context.Response.StatusCode StatusCodes.Status500InternalServerError;context.Response.ContentType text/plain;return context.Response.WriteAsync(Internal Server Error);} }// 在Startup.cs中配置中间件 public void Configure(IApplicationBuilder app, IWebHostEnvironment env) {// ...app.UseMiddlewareErrorHandlingMiddleware();// ... }使用过滤器时你可以通过特性Attribute将其直接应用于控制器或动作方法或者通过全局配置将其应用于整个应用程序。这些过滤器提供了一种灵活且模块化的方式来扩展ASP.NET Core应用程序的功能。 请注意对于使用ServiceFilter的过滤器你需要在Startup.cs中的ConfigureServices方法中注册它们作为服务。例如 public void ConfigureServices(IServiceCollection services) {// ...services.AddScopedMyAuthorizationFilter();services.AddScopedMyResourceFilter();services.AddScopedMyExceptionFilter();// ... }而使用特性Attribute的过滤器则不需要在ConfigureServices中注册
http://www.pierceye.com/news/223846/

相关文章:

  • 网站建设模板网站网站分析的优劣势
  • 医疗网站备案要怎么做 需要准备什么材料高端html5网站建设织梦模板
  • 网站建设支付方式站长之家seo综合
  • 桂林网丫网业管理有限公司外贸网站建设和优化
  • 安徽合肥中国建设银行网站首页如何寻找做网站的客户
  • 网站是怎么做网站建设风险是什么
  • 商丘电子商务网站建设徽文化网站建设方案书
  • 什么网站做视频给钱网上做广告宣传
  • 建网站域名注册后需要做seo是什么意思
  • 做系统正版win10系统下载网站安定网站建设
  • 代码怎么做网站网站建设合同 简单
  • 耐克官网网站设计做一个企业网站需要多少钱
  • 动易手机网站自己开发小程序要多少钱
  • 英迈思做的网站怎么样网站做m版
  • 通州设计网站建设城市宣传片制作公司
  • 南安网站设计网站创意
  • 建设部网站造价注册seo优化易下拉霸屏
  • 西安网站外包上海网站被查
  • 建简单网站高端建筑铝型材
  • wordpress 网站访问量高端建筑物图片
  • seo网站推广目的WordPress灯箱效果移动适配
  • 梅州正规的免费建站微信应用开发公司
  • 百度做网站教程网站建设与维护ppt
  • 化妆品网站建设方案做咩有D网站响网吧上不了
  • 网站 迁移房地产销售基础知识大全
  • 门户网站建设汇报材料网站开发与制作中期报告
  • 网站建设可以自己弄吗知乎做网站必须要服务器吗
  • 怎么制作自己的小程序专业seo整站优化
  • 做网站是干什么用的苏宁易购网站上的营销页面
  • 浪网站制作网站开发是无形资产