Asp.net mvc MVC在使用操作方法之前,日志记录的代码(在流方面)在哪里
我需要有关MVC流的日志记录的帮助 我有一个安全认证的Web API,人们试图访问它。由于对Web API方法的访问受到限制,一些人根本无权访问它(Asp.net mvc MVC在使用操作方法之前,日志记录的代码(在流方面)在哪里,asp.net-mvc,logging,asp.net-web-api,asp.net-mvc-routing,audit-logging,Asp.net Mvc,Logging,Asp.net Web Api,Asp.net Mvc Routing,Audit Logging,我需要有关MVC流的日志记录的帮助 我有一个安全认证的Web API,人们试图访问它。由于对Web API方法的访问受到限制,一些人根本无权访问它([Authorize(roles=Admin)]和其他基于角色的属性限制访问)。但是我想记录人们访问它的尝试,即使他们没有成功 在企业应用程序中执行此操作的方法是什么?请不要含糊其辞。最正确的方法是创建一个继承ActionFilterAttribute()并重写OnActionExecuting方法的类。然后可以在Global.asax.cs中的Gl
[Authorize(roles=Admin)]
和其他基于角色的属性限制访问)。但是我想记录人们访问它的尝试,即使他们没有成功
在企业应用程序中执行此操作的方法是什么?请不要含糊其辞。最正确的方法是创建一个继承ActionFilterAttribute()并重写OnActionExecuting方法的类。然后可以在Global.asax.cs中的GlobalFilters中注册 这将只截获实际有路由的请求。请参阅。您需要将授权筛选器与authorize属性分开,以便向其添加行为。属性本身就有,是过滤器完成了这项工作。挂接的地方是
AuthorizeAttribute
子类中的HandleUnauthorizedRequest
方法。可以使用装饰器模式在执行原始处理程序之前记录尝试(filterContext.Result=new MyLogger(new-HttpUnauthorizedResult(),filterContext);
)。