如何在Web Api控制器中触发OnActionExecuting?
我的api端点使用的是asp.net mvc(4)web api控制器。
有没有类似于mvc OnActionExecuting的事件?
另外,如果请求具有授权令牌,如何访问Request对象以进行查找?
由于Niko发布的filter对我不起作用(我正在使用ApiController
类),我实现了这个filter:
public class MyActionFilter : System.Web.Http.Filters.ActionFilterAttribute { public override void OnActionExecuting(HttpActionContext actionContext) { // pre processing }
确保不使用“System.Web.Mvc.ActionFilterAttribute”中的ActionFilter。
使用动作filter 。
public class MyActionFilter : ActionFilterAttribute { public override void OnActionExecuting(ActionExecutingContext filterContext) { //use filterContext.HttpContext.Request... } }
对于控制器操作,请应用该属性
[MyActionFilter] public Action MyAction(...) { //... }
正如Satpal在他的评论中提到的,您可能实际上想要使用AuthorizeAttribute来授权访问您的操作。
- MVC中的Summernote和表单提交c#
- 如何在mvc3视图中调用foreach中的javascript函数
- 在ASP.NET Core 2.0 Web Api中返回“raw”json
- 在ASP.NET MVC 5中将整个对象从视图传递到控制器
- 如何在所有cshtml页面中添加“默认使用”?
- asp.net mvc api return’此XML文件似乎没有与之关联的任何样式信息。 文档树如下所示。
- 如何在Asp.net MVC和entity framework中进行分页时应用filter?
- 尝试激活’AuthController’时无法解析类型’Microsoft.AspNetCore.Identity.UserManager`的服务
- 将整数数组发布到asp.net web api