mongoose实现权限查询控制
来源:互联网 发布:js时间倒计时代码 编辑:程序博客网 时间:2024/06/05 14:21
声明: 转载请注明出处
功能说明: 使用mongoose查询数据库是否有该条数据,当没有的时候,禁止用户访问页面,并将访问者信息加入无权限用户。当用户存在,判断用户是否有访问权限,有则通过,没有即禁止访问。
1. 导入schema
import User from './UserSchema';
2. 设置默认变量来控制权限,默认为无权限
let per = false;
3. 操作代码
function Authencation(req, res, next) {//在用户访问网站时,已获取到用户信息并保存在session中if (session.userinfo){//以用户邮箱为验证用户身份唯一标识,根据邮箱查询其权限 User.findOne({ email: session.userinfo.mail }, 'permission', (err, result) => { //permission为权限,其值为布尔型 if (result) { per = result.permission; } else { //用户不存在,保存为无权限用户 const user = new User({ id: session.userinfo.userId, name: session.userinfo.userName, email: session.userinfo.mail, permission: false, }); user.save(); } 将per存储到cookie中,以便页面中能取到其值来决定页面的重定向 res.cookie('per', per); next(); });}else{ redirect... //即用户没有身份信息时的处理}
附:
1. 取cookie方法
function getCookie(name) { const strCookie = document.cookie; const arrCookie = strCookie.split('; '); let returnValue; for (let i = 0; i < arrCookie.length; i += 1) { const arr = arrCookie[i].split('='); if (arr[0] === name) { returnValue = arr[1]; } } return returnValue;}
阅读全文
0 0
- mongoose实现权限查询控制
- mongoose实现分页和复杂查询
- mongoose 多条件模糊查询的实现
- mongoose中数组循环查询find结果的同步实现
- Struts2实现权限控制
- filter实现权限控制
- Filter实现权限控制
- Mongoose 一些查询方法
- Mongoose 一些查询方法
- mongoose $where、find查询
- AOP与权限控制实现
- AOP与权限控制实现
- AOP与权限控制实现
- Filter过滤器实现权限控制
- 基于URL实现权限控制
- Filter过滤器实现权限控制
- struts2 过滤器实现权限控制
- spring aop实现权限控制
- 学习java多线程的笔记1--Thread(Runnable t)与重写run()方法等
- mysql千万级大数据SQL查询优化
- spring boot 输出简单 json格式的数据(利用分层结构)
- 2017年多校赛第九场 1005 FFF at Valentine(缩点+拓扑排序)
- ecmall 入口文件分析
- mongoose实现权限查询控制
- //请求数据, 省流量模式实现,下载安装,sdcard存储
- SSM(spring+springMVC+Mybatis)简单整合
- HDU 6170 Two strings dp || 正则
- [题解]2017 多校7 — Just do it
- 阿里云新一代关系型数据库 PolarDB 剖析
- C++线程池原理及创建(转)
- cocoapods 错误
- (总结)IO之File类<一>