排名
6
文章
6
粉丝
16
评论
8
{{item.articleTitle}}
{{item.blogName}} : {{item.content}}
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2024TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术
分类:
权限
首先创建一个文件夹Filters并新建一个类IsAuthorizeAttribute继承AuthorizeAttribute,分别重写两个方法,如下代码
public class IsAuthorizeAttribute:AuthorizeAttribute { protected override bool AuthorizeCore(HttpContextBase httpContext) //处理返回bool结果 { //判断是否已经登陆 if (httpContext.Session["User"] != null) { return true; } else { return false; } } //这个方法是上面返回false在这里做相应的操作 protected override void HandleUnauthorizedRequest(AuthorizationContext filterContext) { //页面跳转,跳到登陆页面 filterContext.Result = new RedirectResult("~/login/Index"); } }
然后在设置全局什么鬼东西不知道怎么叫,具体在App_Start文件夹的FilterConfig类里设置,如下代码:
public class FilterConfig { public static void RegisterGlobalFilters(GlobalFilterCollection filters) { filters.Add(new HandleErrorAttribute()); //添加相应的类即可 filters.Add(new IsAuthorizeAttribute()); } }
然后为了防止循环的重定向访问地址,我们在过滤掉一些过滤器或者类,只需在相应的过滤器或者类上面[AllowAnonymous]就可以了,如下代码
[AllowAnonymous]//过滤掉可以访问该类 public class loginController : Controller { // // GET: /login/ public ActionResult Index() { return View(); } public ActionResult dealLogin(string userName, string userPassWord) { UserInfoDAL userinfoDal = new UserInfoDAL(); UserInfo User = userinfoDal.GetUserInfo(userName, userPassWord); if (User != null) { return Json(1); } else { return Json(0); } } }
OK 这是自己巩固的独立完成的,加油自己哈哈
评价