如何在不使用cookie的情况下传递参数时将用户重定向到另一个页面

时间:2015-12-18 08:44:36

标签: javascript node.js express

我需要将用户从/?v=xxx等网址重定向到没有参数的索引,同时以其他方式传递这些参数以在内部实际使用它们(所以我只想从地址中删除参数)。

我想出的第一个想法是使用自定义标题:

app.get('/', function(req, res) {
  if (req.query.v !== undefined) {
    res.set('Video-ID', req.query.v);
    res.redirect('/');
  } else {
    console.log(req.get('Video-ID'));
    res.render('index', {
      videoID: req.get('Video-ID')
    });
  }
});

但它似乎不起作用 - console.log(req.get('Video-ID'));每次都打印undefined

有没有办法在内部传递参数而不使用使用Cookie时重定向用户?如果我必须使用cookies,那么在Express 4中最好的方法是什么呢?

1 个答案:

答案 0 :(得分:1)

你无法实现这一目标。

cookie-parser是一个很棒的工具。但是,你可以使用Express's cookies,他们会做你需要的。

// Before redirect
res.cookie('videoId', '123456789');
// After redirect method
res.clearCookie('videoId');