MVC判断用是否登录了平台
需求就是要求有些页面需要用户登陆了之后才能访问,那么就需要是否登录验证,直接上代码:
这个可以单独写到一个类里面:
WebAuthenUsers.cs:
using System; using System.IO; using System.Net; using System.Text; using System.Web.Mvc; using WLSH.B2B.Shop.Common; using WLSH.B2B.Shop.Core; using WLSH.B2B.Shop.Core.DataBase; using WLSH.B2B.Shop.Core.DataOther;namespace WLSH.B2B.Shop.Web {public class WebAuthenUsers : ActionFilterAttribute{/// <summary>/// 执行Action之前操作/// </summary>/// <param name="filterContext"></param>public override void OnActionExecuting(ActionExecutingContext filterContext){//BaseServiceContents<Users> _baseContent = new BaseServiceContents<Users>();//Users users = _baseContent.Find(Guid.Parse("7CB684BD-667F-4CA3-91D2-A2AF2B802044"));//filterContext.HttpContext.Session["UserInstance"] = users;//构造未登陆时的转向urlvar urlHelper = new UrlHelper(filterContext.RequestContext);var url = urlHelper.Action("Login", "Home");//3.返回文本执行var contentResult = new ContentResult{Content = "<script>window.opener=null; window.top.location='/Home/Login';</script>"};//判断是否登陆if (filterContext.HttpContext.Session == null || filterContext.HttpContext.Session["CustomerInstance"] == null) // || !IsTimeOut() {//1.转向操作//filterContext.Result = new RedirectResult(url);//2.执行js脚本,貌似只支持ajax请求//ContentResult contentResult = new ContentResult();//contentResult.Content = "alert('Hello World!');";//contentResult.ContentType = "application/x-javascript"; filterContext.Result = contentResult;}//else//{// //判断功能权限// var controllerName = filterContext.RouteData.Values["controller"].ToString();// var actionName = filterContext.RouteData.Values["action"].ToString();// string thisRequestUrl = string.Format(",/{0}/{1},", controllerName, actionName);// //Users users = App.Instance.HaveAuthorityUser ?? new Users();// if (users != null && users.RolesId != Guid.Empty)// {// //非超级管理员// if (users.RolesId != Guid.Parse("B22468F7-4352-4C07-9C9A-62222A67322A"))// {// string urlAllString = roleFeaturesRepository.GetRoleFeaturesUrlListByRoleId(users.RolesId.ToString());// if (!string.IsNullOrEmpty(urlAllString) && urlAllString.IndexOf(",") > -1)// {// urlAllString = "," + urlAllString + ",";// int index = StringHelper.GetStrCount(urlAllString, thisRequestUrl);// if (index < 0)// filterContext.Result = contentResult;// }// else// filterContext.Result = contentResult;// }// }// else// filterContext.Result = contentResult;//}//处理Action之前操作内容根据我们提供的规则来定义这部分内容base.OnActionExecuting(filterContext);}/// <summary>/// 执行Action之后操作/// </summary>/// <param name="filterContext"></param>public override void OnActionExecuted(ActionExecutedContext filterContext){base.OnActionExecuted(filterContext);}} }
使用方法:
/// <summary>/// 购物车页面/// </summary>/// <returns></returns> [WebAuthenUsers]public ActionResult Index(){Guid userid = App.Instance.HaveAuthorityCustomer.Id;if (userid != new Guid()){ViewBag.cartList = _cartsRepository.GetCartList(userid.ToString().Trim());}return View();}
[WebAuthenUsers]也可以加在
这前面,表示这个controller都需要登录验证
转载于:https://www.cnblogs.com/LoveQin/p/5672459.html
MVC判断用是否登录了平台相关推荐
- Java web登录拦截器_Spring MVC 拦截器实现登录
上篇博文我在博客中讲到如何使用spring MVC框架来实现文件的上传和下载,今天小钱给大家再来分享和介绍Spring MVC框架中相当重要的一块功能--拦截器. 关于拦截器的概念我在这里就不多说了, ...
- vue判断浏览器是否id_QQ被曝读取浏览器历史记录!回应称系用于判断是否恶意登录...
近日,有网友反映,腾讯QQ在软件运行期间自行读取用户的浏览器历史记录数据,引发网友关注.南都记者注意到,1月18日,腾讯QQ官方账号在网络问答社区知乎回应此事称,经过调查,发现PC QQ存在读取浏览器 ...
- python验证用户登录的判断_python怎么判断用户是否登录?
python中判断用户是否登录的方法:def cmdbindex(req): if not request.user.is_authenticated(): return render(request ...
- javaweb关于用户是否登录全局判断,没有登录跳转到登录界面
javaweb关于用户是否登录全局判断,没有登录跳转到登录界面 有这样一个需求,用户密码登录网站,在session中保留了用户的信息,但是用户很长时间没有再操作该界面,用户的session则被浏览器清 ...
- s:if的用法(判断用户是否登录过了的操作)
判断用户是否登录了的代码: <s:if test="#session.account.name != null"> 1:直接写表达式 <s:set name=&q ...
- html页面判断是否登录,egg(103)--egg之定义公共的中间件判断用户是否登录以及去结算页面制作...
判断用户是否登录 中间件 app/middleware/userauth.js module.exports = (options, app) => { return async functio ...
- vue-router判断页面未登录时,自动跳转到登录页
1.定义路由的时候配置meta属性,requireAuth用来标记跳转的这个路由是否需要检测登录 下面的两个页面,登录页不需要检测,首页需要检测 const routers = [ {path: '/ ...
- MVC 打印解决方案--SNF快速开发平台3.1
MVC 打印解决方案--SNF快速开发平台3.1 参考文章: (1)MVC 打印解决方案--SNF快速开发平台3.1 (2)https://www.cnblogs.com/spring_wang/p/ ...
- 判断用户是否登录成功
根据用户输入的用户名和密码,判断用户是否登录成功 功能需求: 1).系统里面有多个用户,用户信息目前保存在列表里面; users=['root','westos'] passwds=['123','4 ...
最新文章
- 2021年大数据Hadoop(十):HDFS的数据读写流程
- hexo博客更新主题后上传Git操作
- JAVA EE Eclipse下配置Tomcat服务器
- 一文说通C#中的异步编程
- [CMake] 简单的样例工程
- 2006. 差的绝对值为 K 的数对数目
- 如何在android上嵌入mupdf作为pdf阅读器
- 龙哥库他发matlab程序,编程实现四阶龙哥库塔法解方程
- luoguP4234 最小差值生成树
- 知识点四 图论:dijkstra (HDU 2544 +HDU 1874)
- 旅游类App的原型制作分享
- [024] 微信公众帐号小q机器人实例.
- 解决M1芯片mac安装AU( Audition2020)AU2020已适配M1芯片,M1处理器安装AU教程方案
- Testlink配置设置(参考文章)
- php 炸金花牌型 和 比牌 规则
- 实时计算Flink+Hologres
- java缺少方法主体_Java开发网 - 总是报错(缺少方法主体,或声明抽象)
- To B 业务 vs To C 业务
- 一文读懂机器学习中的贝叶斯统计学
- 从终端进入本地其他磁盘
热门文章
- 关于从EXCEL中导入到SQL server中的问题
- Flutter StatefulBuilder 用来实现局部数据刷新
- Mr.J-- jQuery学习笔记(十一)--事件委托
- 使用RemObjects Pascal Script
- [LeetCode] 143. Reorder List_Middle tag: Linked List
- ECharts属性设置
- 数据库连接和乱码问题
- h:commandButton
- Django+xadmin 打造线上教育平台(二)-1(旧)
- EmailMessage类