快递路线参数在包含" @"

时间:2017-08-20 03:37:46

标签: express

有一条非常简单的快速路线

router.get('/compare/:packages', function(req, res, next) {
  const packages = req.params.packages.split(',');
  res.render('index', { title: "title" });
});

使用包含@符号的内容访问它时,它不匹配并返回404,帮助?

/compare/elm,@cycle/run

编辑:这有效

router.get('/compare/:packages*', function(req, res, next) {
  const packages = req.params.packages.split(',');
  res.render('index', { title: "title" });
});

1 个答案:

答案 0 :(得分:1)

问题不在于@,而在/之前是/run,因为默认情况下,参数将以斜杠分隔。

您可以使用:

router.get('/compare/*', function(req, res, next) {
  const packages = req.params[0].split(',');
  res.render('index', { title: "title" });
});