asp.net后台管理系统-登陆模块-路由权限控制_1

using System.Web.Routing;

//重写System.Web.Routing中Initialize方法
        protected override void Initialize(RequestContext requestContext)
        {
            base.Initialize(requestContext);
            //脱离权限控制的url
            if (Request.RawUrl.ToLower().Contains("url1") || Request.RawUrl.ToLower().Contains("url2"))
            {

            }
            //是否验证用户
            else if (User.Identity.IsAuthenticated)
            {
                //通过 User.Identity.Name 查询数据库获取用户信息实体CurrentUser
                // User.Identity.Name是用户登陆的时候保存的值:UserFlag
                //FormsAuthentication.SetAuthCookie(UserFlag, createPersistentCookie);
                ViewBag.CurrentUser = CurrentUser;
                if (CurrentUser == null)
                {
                    //如果用户不存在,跳转登陆界面
                    requestContext.HttpContext.Response.Redirect("LoginUrl");
                }
                if (requestContext.HttpContext.Request.HttpMethod == "GET")
                {
            //获取当前请求的url信息=》获取controller名称
            var controllername = requestContext.RouteData.Values["controller"].ToString().ToLower(); //1.验证用户拥有的url权限 //2.跳转用户访问的url 或者 设置一个session值在前端框架中跳转 //3.操作session } } else { requestContext.HttpContext.Response.Redirect("LoginUrl"); } }

  

转载于:https://www.cnblogs.com/yxyl/p/10083887.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值