Express.js和connect-mongo session" TypeError:无法读取属性' upserted'未定义"

时间:2016-07-26 22:10:44

标签: javascript node.js mongodb session express

我正在尝试使用connect-mongo模块存储会话,但是我收到以下错误:

TypeError: Cannot read property 'upserted' of undefined

connect-mongo的用法如下:

import session from 'express-session';
const MongoStore = require('connect-mongo')(session);

app.use(session({
  secret: 'SECRET',
  store: new MongoStore({ url: 'mongodb://mongo:27017/sessions' }),
  saveUninitialized: true,
  resave: false
}));

同时,我可以看到正在重新加载的每个页面上创建会话条目,其中包含以下内容:

{
  "_id": "zO68C8OuARTUblw3EqHfUikR_IIHRaQq",
  "session": "{\"cookie\": \"originalMaxAge\":null,\"expires\":null,\"httpOnly\":true,\"path\":\"/\"    }}",
  "expires": new Date(1470779765287)
}

并且到期日期设置为创建时间戳(默认值)

之后的14天

使用的包版本:

"cookie-parser": "^1.4.3",
"connect-mongo": "^1.3.1",
"express": "~4.0.0",
"express-session": "^1.14.0",

1 个答案:

答案 0 :(得分:0)

我在connect-mongo存储库上打开了an issue,实际上,问题已在最新版本1.3.2中解决了。:)