如何在节点JS中的GET请求中向响应对象添加cookie?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (33)

我试图在另一个GET请求中向Response对象(RES)添加一个cookie。但是,如果我尝试以下操作,它将给我一个错误,在发送标题之后,我无法设置它们。我假设通过调用“请求”我已经发送了标题,如何使用来自单独GET请求的数据来实现向响应对象添加cookie?同步特性也不允许我将数据保存在GET请求之外。我正在使用来自NPM的请求模块,谢谢。

/* GET home page. */
router.get('/', function(req, res, next) {
    process.env['NODE_TLS_REJECT_UNAUTHORIZED'] = 0
    var status = "Not currently logged in.";
    if (req.cookies.token !== undefined) {
      status = "Currently Logged in.";
    }
    if (req.cookies.email !== undefined) {
      request('https://localhost:44338/api/customer/' + req.cookies.email 
      {json: true}, (err, response, body) => {
        res.cookie('user', body[0].customerID, {maxAge: 9000000});
        //console.log(body);
      });
    }
    res.render('index', { title: 'Mighty Morphin Store', data: "", status: status});
});
提问于
用户回答回答于

在设置cookie之后,必须在回调函数中发送响应。

/* GET home page. */
router.get('/', function(req, res, next) {
    process.env['NODE_TLS_REJECT_UNAUTHORIZED'] = 0
    var status = "Not currently logged in.";
    if (req.cookies.token !== undefined) {
      status = "Currently Logged in.";
    }
    if (req.cookies.email !== undefined) {
      request('https://localhost:44338/api/customer/' + req.cookies.email 
      {json: true}, (err, response, body) => {
        res.cookie('user', body[0].customerID, {maxAge: 9000000});
        //console.log(body);
        res.render('index', { title: 'Mighty Morphin Store', data: "", status: status});
      });
    }

});

所属标签

可能回答问题的人

  • 华讯云

    0 粉丝0 提问7 回答
  • gulu丶咕噜

    0 粉丝1 提问5 回答
  • 卓脑域名

    0 粉丝0 提问3 回答
  • 女淘日记

    杭州吱吱吱科技 · 站长 (已认证)

    1 粉丝1 提问3 回答

扫码关注云+社区

领取腾讯云代金券