完全不能理解为什么cookie和expires不能工作。用户获得授权并登录到该帐户。但是,无论我在app.js中提到什么maxAge或expires,它总是在每隔几秒钟(或最多几分钟)后注销用户。网页是SSL安全的(HTTPS):
const express = require('express');
const app = express();
const session = require('express-session');
const mysql = require('mysql');
const bodyParser = require('body-parser');
const connection = mysql.createConnection({
//connection details here
});
app.use(bodyParser.urlencoded({extended : false}));
app.use(bodyParser.json());
app.set('view engine', 'ejs');
app.use(session({
secret: 'secret code here',
expires: new Date(Date.now() + (60 * 24 * 7 * 1000))
}));
app.get('/login', function(req, res) {
res.render('pages/login');
});
app.post('/auth', function(request, response) {
var username = request.body.username;
var password = request.body.password;
if (username && password) {
connection.query(query here) {
if (results.length > 0) {
request.session.loggedin = true;
request.session.username = username.toString();
response.redirect('/account');
}
});
} else {
response.send('Please enter Username and Password!');
response.end();
}
});
// account page
app.get('/account', function(req, res) {
if (req.session.loggedin !== true) {
res.render('pages/login');
} else {
//account page redirection here
}
});发布于 2020-05-26 01:02:30
使用cookie-session而不是express-session,它工作得很好。
https://stackoverflow.com/questions/61615664
复制相似问题