私はexpressjsと[email protected]をセッション用のMongoStoreとして使用しています。Node.js、無限ループのセッション
セッションコードが正常に機能していました。ノードと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
エラーメッセージは永遠に送信されます。発送を続ける。 – murvinlai
Connectバージョンは何ですか?私はこれが最近更新されたと考えており、後方互換性に欠けるかもしれません。 –