zoukankan      html  css  js  c++  java
  • WebAPI 自定义过滤

    自定义filter 类过滤

    -------------------------------------------------------------------------

    public class MyFilter : IAuthorizationFilter
    {
      public bool AllowMultiple => true;

      public async Task<HttpResponseMessage> ExecuteAuthorizationFilterAsync(HttpActionContext actionContext, CancellationToken cancellationToken, Func<Task<HttpResponseMessage>>     continuation)
      {
        IEnumerable<string> name;
        bool v = actionContext.Request.Headers.TryGetValues("username", out name);

        string nm = name.FirstOrDefault();
        if(nm==null)
        {
          return new HttpResponseMessage(HttpStatusCode.Unauthorized);
      }
      else
      {
        return await continuation();
      }

      return new HttpResponseMessage(HttpStatusCode.Unauthorized);

      }
    }

    添加filter 类到配置文件

    ---------------------------------------------------------------------------------------------------

    public static class WebApiConfig
    {
      public static void Register(HttpConfiguration config)
      {
        config.MapHttpAttributeRoutes();

        config.Routes.MapHttpRoute(
        name: "DefaultApi",
        routeTemplate: "api/{controller}/{action}/{id}",
        defaults: new { id = RouteParameter.Optional });
        config.Filters.Add(new MyFilter());
      }
    }

  • 相关阅读:
    HTML5 meta最全使用手册
    CSS3实现开门动画
    angularJS学习资源最全汇总
    酷炫放大镜canvas实现
    完成评论功能
    从首页问答标题到问答详情页
    首页列表显示全部问答,完成问答详情页布局
    制作首页的显示列表。
    发布功能完成。
    登录之后更新导航
  • 原文地址:https://www.cnblogs.com/bruce1992/p/14032260.html
Copyright © 2011-2022 走看看