会话冲突

时间:2019-04-06 09:47:36

标签: express session

我发现了一个由用户打开的问题,但由于没有办法解决,因此已将其关闭。 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
}

请帮助!

0 个答案:

没有答案