-
登陸界面重寫
session驗證登陸 參考地址,參考地址2
app.js
var session = require('express-session');
var FileStore = require('session-file-store')(session);
var identityKey = 'skey';
app.use(session({
name: identityKey,
secret:'admin' ,//'chyingp', // 用來對session id相關的cookie進行簽名
//store: new FileStore(), // 本地存儲session(文本文件料睛,也可以選擇其他store,比如redis的)
saveUninitialized: false, // 是否自動保存未初始化的會話夜焦,建議false
resave: false, // 是否每次都重新保存會話楞黄,建議false
cookie: {
maxAge: 60 * 1000 // 有效期,單位是毫秒
}
}));
admin.js
var findUser = function(name, password){
return users.find(function(item){
return item.name === name && item.password === password;
});
};
router.get('/', function(req, res, next){
var sess = req.session;
var loginUser = sess.loginUser;
var isLogined = !!loginUser;
if(sess.sign){//如果是登陸狀態(tài)
res.render('admin', {
isLogined: isLogined,
name: loginUser || ''
});
}else{
res.render('login');
}
});
router.post('/',function (req,res,next) {
var sess = req.session;
var username=req.body.username;
var password=req.body.password;
var user = findUser(username, password);//是否存在用戶
if(user){
req.session.regenerate(function(err) {
if(err){
res.render('login',{mes:'登陸發(fā)生了某些錯誤'});
return 0;
}
req.session.loginUser = user.name;
res.render('admin');
});
}else{
res.render('login',{mes:'賬號或者密碼錯誤'});
}
});