move cookie middleware
This commit is contained in:
parent
a5da594c38
commit
16cb3b7f76
2 changed files with 20 additions and 14 deletions
17
src/app.js
17
src/app.js
|
|
@ -1,11 +1,8 @@
|
||||||
const express = require('express');
|
const express = require('express');
|
||||||
const cookieParser = require('cookie-parser');
|
const cookieParser = require('cookie-parser');
|
||||||
const path = require('path');
|
const path = require('path');
|
||||||
const uuid = require("uuid");
|
|
||||||
|
|
||||||
const sequelize = require('./database');
|
const sequelize = require('./database');
|
||||||
const Session = require('./models/Session');
|
|
||||||
|
|
||||||
|
|
||||||
const app = express();
|
const app = express();
|
||||||
const port = 3000;
|
const port = 3000;
|
||||||
|
|
@ -17,17 +14,9 @@ app.use(express.json());
|
||||||
app.set('view engine', 'ejs');
|
app.set('view engine', 'ejs');
|
||||||
app.set('views', path.join(__dirname, 'views'));
|
app.set('views', path.join(__dirname, 'views'));
|
||||||
|
|
||||||
app.use(async (req, res, next) => {
|
const cookieMiddleware = require('./middlewares/cookieMiddleware');
|
||||||
if (!req.cookies.sessionUuid) {
|
|
||||||
const sessionUuid = uuid.v7();
|
app.use(cookieMiddleware);
|
||||||
res.cookie('sessionUuid', sessionUuid, { httpOnly: true, maxAge: 86400000 });
|
|
||||||
const session = await Session.create({
|
|
||||||
uuid: sessionUuid,
|
|
||||||
created_at: new Date().toISOString()
|
|
||||||
})
|
|
||||||
}
|
|
||||||
next();
|
|
||||||
});
|
|
||||||
|
|
||||||
const webRoutes = require('./routes/webRoutes');
|
const webRoutes = require('./routes/webRoutes');
|
||||||
const apiRoutes = require('./routes/apiRoutes');
|
const apiRoutes = require('./routes/apiRoutes');
|
||||||
|
|
|
||||||
17
src/middlewares/cookieMiddleware.js
Normal file
17
src/middlewares/cookieMiddleware.js
Normal file
|
|
@ -0,0 +1,17 @@
|
||||||
|
const uuid = require("uuid");
|
||||||
|
|
||||||
|
const Session = require('../models/Session');
|
||||||
|
|
||||||
|
async function cookieMiddleware(req, res, next) {
|
||||||
|
if (!req.cookies.sessionUuid) {
|
||||||
|
const sessionUuid = uuid.v7();
|
||||||
|
res.cookie('sessionUuid', sessionUuid, { httpOnly: true, maxAge: 86400000 });
|
||||||
|
const session = await Session.create({
|
||||||
|
uuid: sessionUuid,
|
||||||
|
created_at: new Date().toISOString()
|
||||||
|
})
|
||||||
|
}
|
||||||
|
next();
|
||||||
|
}
|
||||||
|
|
||||||
|
module.exports = cookieMiddleware;
|
||||||
Loading…
Add table
Add a link
Reference in a new issue