我正在使用express 4.12.2,express-session 1.11.1,& connect-redis 1.4.7。使用NODE_ENV=production npm start
运行以下代码时:
var session = require('express-session');
var RedisStore = require('connect-redis')(session);
app.use(session({
store: new RedisStore(options),
secret: 'keyboard cat'
}));
我收到以下错误:
var Store = connect.session.Store;
^
TypeError: Cannot read property 'Store' of undefined
非常感谢任何帮助。
答案 0 :(得分:1)
1.4.7
是connect-redis
的旧版本。签名自该版本以来已更改。在接受connect
对象之前,但自从使用express 4进行2.0更新后,它现在接受session
对象。您的代码已经在使用新签名,因此要使用此功能,您需要做的就是更新package.json
...
"dependencies": {
...
"connect-redis": "^2.3.0"
}
...
和/或更新模块:
npm install connect-redis