我已经看过几篇与此相关的帖子,但没有解决我的问题。req.session在Express.js中未定义
我有这样的代码在server.js
var express = require('express');
var app = express();
app.configure(function(){
app.set(express.cookieParser());
app.set(express.session({secret: "This is a secret"}));
});
app.get('/name/:name', function(req, res){
req.session.name = req.params.name;
res.send("<a href='/name'>GO</a>");
});
app.get('/name', function(req, res){
res.send(req.session.name);
});
app.listen(3000);
当我去http://localhost:3000/user/someone
这就是我得到 TypeError: Cannot set property 'name' of undefined at /Users/Me/Node/server.js:10:19 at callbacks
是不是'app.use(express.cookieParser())'等? –
(另外,我认为'app.configure'不是必需的,只保留为遗留的,你应该调用'app.use(stuff)')。 –
'app.configure()'方法不是遗留的,也不是在这里使用不正确。这里的问题是提出问题的人使用的是用于设置设置的方法,而不是应用中间件的方法。 – hexacyanide