Я обнаружил проблему, которая была открыта пользователем, но закрыта, потому что не было способа ее исправить. https://github.com/expressjs/session/issues/478
Я зарегистрировал его в учетной записи, затем обновил страницу и увидел другую учетную запись. и между ними нет никакой связи. обновите страницу и мой аккаунт вернется.
Но я сталкиваюсь с этим сейчас и не могу помочь себе найти способ исправить это, и мне нужна ваша помощь, пожалуйста.
Вот мой код server.js
const csrf = require('csurf')
const session = require('express-session')
const MongoStore = require('connect-mongo')(session)
const cookieParser = require('cookie-parser')
// Sessions
app.set('trust proxy', 1)
app.use(session({
name: 'myapp.v2',
secret: config.app.secret,
resave: true,
saveUninitialized: true,
cookie: { httpOnly: true },
store: new MongoStore({ mongooseConnection: mongoose.connection, collection: 'Sessions' }),
}))
// body parser
const bodyParser = require('body-parser')
app.use(bodyParser.json({ limit: '100mb' }))
app.use(bodyParser.urlencoded({ limit: '100mb', extended: true }))
app.use(cookieParser())
app.use(csrf({ cookie: true }))
Я упомянул cookieParser, потому что думал, что это связано с проблемами.
signin.js
// information corrected, log user in
req.session.regenerate(err => {
if (err) {
console.log(err);
}
})
req.session.user = _.omit(User, ['pwd_hash', 'salt'])
if (remember) {
req.session.cookie.maxAge = 60 * 60 * 24 * 30 * 1000
}
Пожалуйста, помогите!