Nodejs表示不添加cookie

时间:2014-07-24 11:38:08

标签: javascript node.js cookies express

我正在尝试构建一个nodejs应用程序,我必须定义cookie。这是一些代码:

var app = express();

app.set('port', process.env.PORT || 3000);
app.set('views', __dirname + '/views');
app.set('view engine', 'ejs');
app.use(express.favicon());
app.use(express.cookieParser());
app.use(express.json());
app.use(express.urlencoded());
app.use(express.methodOverride());
app.use(app.router);
app.use(express.static(path.join(__dirname, 'public')));
...
app.get('/', routes.indexGET);
app.post('/login', routes.loginPOST);
app.post('/number', routes.numberPOST);
...
res.cookie('number', req.body.number, {secure: true, httpOnly: true, maxAge: 1209600000});
console.log(req.cookies); //Returns {}

为什么不添加cookie?我知道这个问题已在这里提出,但我并没有真正罚款任何好的答案。即使是“正确”的答案(将cookieParser放在路由器之前)也没有用。有什么建议?感谢。

1 个答案:

答案 0 :(得分:3)

不确定原因,但如果secure: true

中使用了res.cookie('number', req.body.number, {secure: true, httpOnly: true, maxAge: 1209600000})选项,它对我也不起作用

不要使用它,它会起作用......我想使用它需要建立TLS连接....