【发布时间】:2013-04-19 00:24:07
【问题描述】:
在我的应用程序中,我需要使用 express 框架设置一个 cookie。我已经尝试了以下代码,但它没有设置 cookie。
var express = require('express'), http = require('http');
var app = express();
app.configure(function(){
app.use(express.cookieParser());
app.use(express.static(__dirname + '/public'));
app.use(function (req, res) {
var randomNumber=Math.random().toString();
randomNumber=randomNumber.substring(2,randomNumber.length);
res.cookie('cokkieName',randomNumber, { maxAge: 900000, httpOnly: true })
console.log('cookie have created successfully');
});
});
var server = http.createServer(app);
var io = require('socket.io').listen(server);
server.listen(5555);
【问题讨论】:
-
您如何验证未设置 cookie?你检查过浏览器得到的响应头吗?
-
@NilsH 我已经添加了日志语句。如果它设置意味着它将显示为'cookie已成功创建'..
-
好的,那么要么你的中间件没有被调用,要么前面的一些语句给出了异常。
-
如果我删除了 'app.use(express.static(__dirname + '/public'));'这一行意味着它设置了cookie