123456789101112131415161718192021222324252627282930313233343536 |
- // 引入User
- const {User} = require('../../model/user');
- // 引入加密模块
- const bcrypt = require('bcrypt');
- module.exports = async (req, res) => {
- let data = req.body;
- if(data.email.trim().length == 0 || data.password.trim().length == 0){
- res.status(400).render('admin/error', {
- msg: '邮件账号或者密码错误'
- })
- }else{
- // user is object or null
- let user = await User.findOne({email: data.email});
- const isValid = await bcrypt.compare(data.password, user.password)
- if(user && isValid){
- // 将用户名存储到session请求对象
- req.session.username = user.username;
- // 将用户角色存储到session请求对象
- req.session.role = user.role;
- req.app.locals.userInfo = user;
- // 对用户的角色进行判断
- if(user.role == 'admin'){
- res.redirect('/admin/user')
- }else {
-
- res.redirect('/home/');
- }
- }else {
- res.status(400).render('admin/error', {
- msg: '邮件账号或者密码错误'
- })
- }
- }
- }
|