【已解决】求助! req.session
发布于 11 年前 作者 znx5858 9516 次浏览 最后一次编辑是 8 年前

在写 Node.js 开发指南中的例子, 当要往 MongoDM 中存放新用户时,报错:

TypeError: Cannot set property 'user' of undefined

代码中指向这行:

req.session.user = newUser; 

app.js 中,中间件是这样设置的:

app.configure(function(){ 
 app.set('views', __dirname + '/views'); 
 app.set('view engine', 'ejs'); 
 app.use(express.bodyParser()); 
 app.use(express.methodOverride()); 
 app.use(express.cookieParser()); 
 app.use(express.session({ 
 secret: settings.cookieSecret, 
  store: new MongoStore({ 
   db: settings.db 
  }) 
 })); 
 app.use(app.router); 
 //app.use(express.router(routes))
 app.use(express.static(__dirname + '/public')); 
});

看起来像 session 中间件没有配对,但是又不知道哪里出了问题,求助!

3 回复
console.log(newUser);//undefined

是这样吗

已经解决了.

app.use(express.session({ 
 secret: settings.cookieSecret, 
  store: new MongoStore({ 
   db: settings.db 
  }) 
})); 

要写在

app.use(app.router); 

之前.

我也碰到这个问题了, 原来真是顺序的问题, 谢谢楼主

回到顶部