mih*_*hai 9 connect node.js express
我正在尝试使用内置cookieSession的连接对象,但我无法使用express来正常工作.
我有这个应用程序:
var express = require('express');
var connect = require('connect');
var app = express.createServer();
app.configure(function() {
app.use(express.logger());
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(express.cookieParser('whatever'));
app.use(connect.cookieSession({ cookie: { maxAge: 60 * 60 * 1000 }}));
});
app.get('/', function(req, res) {
res.render('root');
});
app.listen(3000);
Run Code Online (Sandbox Code Playgroud)
我收到这个错误:
TypeError: Cannot read property 'connect.sess' of undefined
at Object.cookieSession [as handle]
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
谢谢
Pat*_*ice 13
除非您按此顺序拥有这3个,否则会话将无效:
app.use(express.cookieParser());
app.use(express.cookieSession());
app.use(app.router);
Run Code Online (Sandbox Code Playgroud)
之后像魅力一样工作.
请参阅:https://stackoverflow.com/a/10239147/2454820
小智 2
你的模块是什么版本connect?该cookieSession中间件在2.0.0版本中首次添加。运行npm list|grep connect以确保您的connect版本至少为 2.0.0 或更高版本。