我使用expressjs和[email protected]作为会话的MongoStore。Node.js,无限循环会话
会发生什么,会话代码正在工作。但是在将node和npm升级到最新版本并将Mongo升级到2.0.2之后,如果我将express.session(store:new MongoStore)升级,那么它将运行一个无限循环。任何想法发生了什么?
这里是我的代码:
express.createServer(
express.cookieParser(),
express.bodyParser(),
express.session({ secret: cfg.session_secret,
cookie: { domain: 'mydomain.com' },
store:new MongoStore({
db: cfg.db_session_name,
host: cfg.db_ip,
port: cfg.db_port
})
})
)
以下是错误:
TypeError: Not a string or buffer
at Object.createHmac (crypto.js:129:21)
at Object.sign (/node_modules/connect-mongo/node_modules/connect/lib/utils.js:135:6)
at Object.serialize (/node_modules/connect-mongo/node_modules/connect/lib/middleware/session/cookie.js:115:17)
at ServerResponse.writeHead (/node_modules/express/node_modules/connect/lib/middleware/session.js:265:46)
at ServerResponse._implicitHeader (http.js:808:8)
at ServerResponse.end (http.js:645:10)
at next (/node_modules/express/node_modules/connect/lib/http.js:167:13)
at pass (/node_modules/express/lib/router/index.js:219:24)
at nextRoute (/node_modules/express/lib/router/index.js:209:7)
at callbacks (/node_modules/express/lib/router/index.js:274:11)
我很困惑,你说你得到一个无限循环,但也给了一个无关的错误信息? – loganfsmyth 2012-02-28 20:40:05
它只会永远发送错误信息。继续发送。 – murvinlai 2012-02-28 22:19:24
什么是您的连接版本?我相信这是最近更新的,它可能缺乏一些向后兼容性。 – 2012-02-29 06:31:31