无法在快速/快速会话中延长会话超时

问题描述 投票:0回答:1

完全无法理解为什么cookieexpires无法正常工作。用户获得授权并登录到该帐户。但是,无论我在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
    }
});
node.js express express-session
1个回答
0
投票

使用cookie会话而不是express-session,它可以正常工作。

© www.soinside.com 2019 - 2024. All rights reserved.