Создается новая сессия при каждом запросе
Я стараюсь реализовать вход (не JWT, не passport.js и т.д.)(просто вход то есть, пост запрос на сервер, проверка с базой данных есть ли пользователь, если да то вошел, если нет то заново). Проблема такова, сессии создаются так, проверка на валидность данных, если все ок тогда мы в сессию записываем рандомно сгенерированный ключ req.session['login'] = abc123(100) и так же записываем ник пользователя req.session['user'] = indata.login, и возвращаем true, если же данные не подтвердились тогда мы возвращаем false, если сессия уже существует возвращаем log_true.
Моя проблема в том что, при каждом новом запросе на сервер какой бы он не был post/get все равно создается новая сессия. Запрос посылаю на сервер с VUE-cli (собираю полный проект). p.s. Не работает именно через VUE, если сделать запрос прямо на сервер тогда все работает норм.
настройки сессии
app.use(
session({
secret: 'dfsalmlkdsmf',
store: new redisStorage({
client: client
}),
proxy: true,
resave: true,
saveUninitialized: true
})
);
обработчик входа
app.post('/login_s', urlencodedParser, function(req, res) {
login = req.body.login;
password = req.body.password;
let indata = {
login: login,
password: password
};
if (req.session["user"] != abc_login_fds) {
getdata('check_log', indata).then(function(data) {
if (data == true) {
req.session['user'] = indata.login;
req.session['login'] = abc123(100);
res.send(true)
} else {
res.send(false)
};
});
} else {
res.send('log_true')
};
});
запрос на сервер из vue
axios({
method: 'post',
data: {
login: this.loginin,
password: this.passwordin
},
withCredentials: true,
url: 'http://127.0.0.1:8000/login_s'
})
.then(response => {
if (String(response.data) === 'log_true') {
console.log(312)
location.href = '/'
} if (String(response.data.user) === this.loginin) {
document.cookie = 'sid_user=' + response.data.login
console.log(document.cookie)
}
})