我想使用nodejs服务器开发一个登录和注销会话,并使用html作为frontend.I遵循本教程https://codeforgeek.com/2014/09/manage-session-using-node-js-express-4/ 我的代码如下 server.js
var express = require('express');
var session = require('express-session');
var bodyParser = require('body-parser');
var app = express();
app.use(express.static(__dirname + '/public'));
app.set('views', __dirname + '/views');
app.engine('html', require('ejs').renderFile);
app.use(session({secret: 'ssshhhhh',saveUninitialized: true,resave: true}));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended: true}));
var sess;
app.get('/',function(req,res){
sess=req.session;
if(sess.email)
{
res.redirect('/admin');
}
else{
res.render('index.html');
}
});
app.post('/login',function(req,res){
sess=req.session;
sess.email=req.body.email;
res.end('done');
});
app.get('/admin',function(req,res){
sess=req.session;
if(sess.email)
{
//res.render('lg.html');
res.write('<h1>Hello '+sess.email+'</h1><br>');
res.end('<a href='+'/logout'+'>Logout</a>');
}
else
{
res.write('<h1>Please login first.</h1>');
res.end('<a href='+'/'+'>Login</a>');
}
});
app.get('/logout',function(req,res){
req.session.destroy(function(err){
if(err){
console.log(err);
}
else
{
res.redirect('/');
}
});
});
app.listen(3000,function(){
console.log("App Started on PORT 3000");
})
代码运行良好,它正在登录并正确注销但我的问题是当我登录时,如果iam通过放置注销按钮将管理页面重定向到我的html页面,我无法从那里注销。请帮帮我