我需要将用户从/?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中最好的方法是什么呢?
答案 0 :(得分:1)
你无法实现这一目标。
cookie-parser是一个很棒的工具。但是,你可以使用Express's cookies,他们会做你需要的。
// Before redirect
res.cookie('videoId', '123456789');
// After redirect method
res.clearCookie('videoId');