Я не могу вести сеансы между разными маршрутизаторами с помощью экспресс-сеансов.Это мой app.js
const express = require('express');
const myRoutes = require('./routes/my-route');
const app = express();
const session = require('express-session');
app.use(session({
secret: 'SECRET',
cookie: {maxAge: 60*60*1000, httpOnly: true, secure: false},
resave: false,
saveUninitialized: true,
}));
app.use('/my-routes', myRoutes);
app.use('/submit', function(req, res, next) {
req.session.info = req.body.info;
});
Все вызовы /submit
работают нормально, и сеанс поддерживается.Но когда я пытаюсь вызвать что-либо с помощью /my-routes/<route>
, создается новый файл cookie и сеанс сбрасывается.
Перед любыми вызовами это выглядит так:
{
"cookie": {
"originalMaxAge":3600000,
"expires":"2018-06-08T17:51:37.229Z",
"secure":false,
"httpOnly":true,
"path":"/"
}
}
Послеодиночный вызов /submit
{
"cookie": {
"originalMaxAge":3600000,
"expires":"2018-06-08T17:51:37.229Z",
"secure":false,
"httpOnly":true,
"path":"/"
},
"info": "thing"
}
Затем, когда я вызываю любой маршрут в /my-routes/<route>
{
"cookie": {
"originalMaxAge":3600000,
"expires":"2018-06-08T17:51:37.446Z",
"secure":false,
"httpOnly":true,
"path":"/"
}
}
, который выглядит так, как будто cookie был сброшен из-за истечения срока действия нового файла.
Вот как я называю AJAX
$.ajax({
type: 'POST',
url: '/submit',
data: data,
dataType: 'json',
success: function(data) {
window.location.href = '/index.html';
},
});