zoukankan      html  css  js  c++  java
  • 过滤器

    public class AppAuthorFilterAttribute : ActionFilterAttribute
        {
            private readonly string _appid;
    
            public AppAuthorFilterAttribute(string appid)
            {
                _appid = appid;
            }
    
            public override void OnActionExecuting(ActionExecutingContext filterContext)
            {
                var request = filterContext.RequestContext.HttpContext.Request;
                string paraAppid;
                if (request.HttpMethod == "GET")
                    paraAppid = request.Params[_appid];
                else
                    paraAppid = request.Form[_appid];
                if (paraAppid == "-1") filterContext.Result = new JsonResult() { Data = new { code = 0, msg = "无权限" } };
                var checkResult = CheckAppAuth(filterContext.RequestContext.HttpContext.Request, paraAppid);
                if (!checkResult)
                    filterContext.Result = new JsonResult() { Data = new { code = 0, msg = "无权限" } };
            }
    
            /// <summary>
            /// 检查应用权限
            /// </summary>
            /// <param name="appid"></param>
            /// <returns></returns>
            public bool CheckAppAuth(HttpRequestBase Request, string appid)
            {
                if (Request.UrlReferrer == null) return false;
    return true;
            }
        }

    使用

            [AppAuthorFilter("appid")]
            public ActionResult PageList(string appid = null)
            {
                var list = InfoService.PageList(appid);           
                return Json(ResultMessage.Ok(list));
            }
  • 相关阅读:
    VC++ 读取UTF-8和ANSI编码文件
    Swift中Singleton的实现
    Swift详解之NSPredicate
    swift中的as?和as!
    Swift中的init方法
    Swift属性
    罗列系统中的所有字体
    Swift 中的Range和NSRange不同
    In line copy and paste to system clipboard
    苹果开发者账号那些事儿(一)
  • 原文地址:https://www.cnblogs.com/nayilvyangguang/p/13361463.html
Copyright © 2011-2022 走看看