У меня проблема с сессией. У меня есть следующий код:
const express = require('express');
const mysql = require('mysql');
const cors = require('cors');
const bodyParser = require('body-parser');
const cookieParser = require('cookie-parser');
const session = require('express-session');
const morgan = require('morgan');
const app = express();
const http = require("http");
app.use(cors());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(cookieParser());
app.use(session({
key: 'user_sid',
secret: 'somerandonstuffs',
resave: false,
saveUninitialized: false,
cookie: {
expires: 600000
}
}));
app.use(bodyParser.urlencoded({
extended: true
}));
app.use(bodyParser.json());
app.post("/login", function (req, resp) {
console.log(req.body);
loginQuery = `SELECT user_id, username, gold, powder, settings FROM users WHERE email = '${req.body.data.username}' OR username = '${req.body.data.username}' and password = '${req.body.data.password}'`;
pool.query(loginQuery, function (error, rows) {
if (error) {
console.log(`Error :`);
console.error(error);
} else {
if (rows.length===1) {
req.session.userData = rows[0];
resp.send(true);
} else {
return resp.status(400).send({
error: 'Bad login data'
});
}
}
})
});
app.get('/getUserData', (req,resp) => {
console.log(req.session);
resp.send(userData);
});
Поскольку вы в / логин-маршруте я устанавливаю req.session.userData = rows[0];
Но когда я пытаюсь получить этот маршрут / getUserData, его там нет. Что мне делать? Я думаю, что я сделал это правильно, я проверял примеры в некоторых уроках, и везде это работает. Я также пытался установить сеанс на одном пути и получить его на другом, и это не сработало. Где моя проблема?