ваше сообщение коммита

This commit is contained in:
2025-05-22 16:24:39 +03:00
parent a91658eb31
commit 9aa842d238
41 changed files with 1621 additions and 507 deletions

View File

@@ -1,25 +1,46 @@
const session = require('express-session');
const pgSession = require('connect-pg-simple')(session);
const { pool } = require('../db');
const db = require('../db');
const sessionConfig = {
store: new pgSession({
pool,
tableName: 'session',
}),
secret: process.env.SESSION_SECRET || 'hb3atoken',
name: 'sessionId',
resave: false,
saveUninitialized: true,
cookie: {
maxAge: 30 * 24 * 60 * 60 * 1000,
httpOnly: true,
secure: process.env.NODE_ENV === 'production',
sameSite: 'lax',
path: '/',
},
};
let onPoolChangeCallback = null;
function setPoolChangeCallback(cb) {
onPoolChangeCallback = cb;
}
let sessionMiddleware = createSessionMiddleware();
function createSessionMiddleware() {
return session({
store: new pgSession({
pool: db.getPool(),
tableName: 'session',
}),
secret: process.env.SESSION_SECRET || 'hb3atoken',
name: 'sessionId',
resave: false,
saveUninitialized: true,
cookie: {
maxAge: 30 * 24 * 60 * 60 * 1000,
httpOnly: true,
secure: process.env.NODE_ENV === 'production',
sameSite: 'lax',
path: '/',
},
});
}
function reloadSessionMiddleware() {
sessionMiddleware = createSessionMiddleware();
if (onPoolChangeCallback) {
onPoolChangeCallback();
}
}
module.exports = {
sessionMiddleware: session(sessionConfig),
get sessionMiddleware() {
return sessionMiddleware;
},
reloadSessionMiddleware,
setPoolChangeCallback,
};