我无法通过Express.js响应传回cookie。情况是我正在制作包含用户凭据的XHR,检查用户是否存在,用户是否存在以及凭据是否正确我通过node_redis将用户信息存储在Redis中。在我处理Redis的回调中,我在响应对象上创建了一个cookie,然后将客户对象发送到浏览器。
这是Redis代码(注意:我没有使用Express会话,所以我只是通过中间件将Redis客户端添加到req.session中):
req.session.hmset('user', customer, function(err, status) {
res.cookie('sid', 'sessionID', {
maxAge: 3600000,
path: '/',
httpOnly: false
});
res.send(customer);
});
奇怪的是,当我在创建cookie后立即添加console.log(res._headers);
时,会出现一个“set-cookie”标题,但它永远不会出现在浏览器中。我可能有错误的请求标题?别的什么?我完全被这里难过了......