tnblog
首页
视频
资源
登录
不帅~~但是很暖心.....
排名
14
文章
75
粉丝
21
评论
43
申请别的接口数据(网络接口)
是伍尚金哇 : 敲一夜代码,流下两三行泪水,掏空四肢五体,六杯白开水七桶泡面
mui框架-移动端跳转以及传值的简单方法(修改解决方法)
是伍尚金哇 : 测试了 可以直接在 extras: { userid:'10' //自定义扩展...
数据库的varchar和nvarchar的区别
是伍尚金哇 : 没人看 自己看一个 温习一下
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术

设置登陆访问权限

3790人阅读 2019/10/30 19:38 总访问:373531 评论:0 收藏:0 手机
分类: 权限

首先创建一个文件夹Filters并新建一个类IsAuthorizeAttribute继承AuthorizeAttribute,分别重写两个方法,如下代码

  1. public class IsAuthorizeAttribute:AuthorizeAttribute
  2.     {
  3.         protected override bool AuthorizeCore(HttpContextBase httpContext//处理返回bool结果
  4.         {
  5.             //判断是否已经登陆
  6.             if (httpContext.Session["User"] != null)
  7.             {
  8.                 return true;
  9.             }
  10.             else
  11.             {
  12.                 return false;
  13.             }
  14.         }
  15.         //这个方法是上面返回false在这里做相应的操作
  16.         protected override void HandleUnauthorizedRequest(AuthorizationContext filterContext) 
  17.         { 
  18.             //页面跳转,跳到登陆页面
  19.             filterContext.Result = new RedirectResult("~/login/Index");
  20.         }
  21.     }

然后在设置全局什么鬼东西不知道怎么叫,具体在App_Start文件夹的FilterConfig类里设置,如下代码:

  1. public class FilterConfig
  2.     {
  3.         public static void RegisterGlobalFilters(GlobalFilterCollection filters)
  4.         {
  5.             filters.Add(new HandleErrorAttribute());
  6.             //添加相应的类即可
  7.             filters.Add(new IsAuthorizeAttribute());
  8.         }
  9.     }

然后为了防止循环的重定向访问地址,我们在过滤掉一些过滤器或者类,只需在相应的过滤器或者类上面[AllowAnonymous]就可以了,如下代码

  1. [AllowAnonymous]//过滤掉可以访问该类
  2.     public class loginController : Controller
  3.     {
  4.         //
  5.         // GET: /login/
  6.         public ActionResult Index()
  7.         {
  8.             return View();
  9.         }
  10.         public ActionResult dealLogin(string userName, string userPassWord)
  11.         {
  12.             UserInfoDAL userinfoDal = new UserInfoDAL();
  13.             UserInfo User = userinfoDal.GetUserInfo(userName, userPassWord);
  14.             if (User != null)
  15.             {
  16.                 return Json(1);
  17.             }
  18.             else
  19.             {
  20.                 return Json(0);
  21.             }
  22.         }
  23.     }



OK 这是自己巩固的独立完成的,加油自己哈哈

评价
不是消失的太阳,也没多少的力量,仍会尽力地发光。