我已經看過幾篇與此相關的帖子,但沒有解決我的問題。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