在Express JS路由中处理null参数

时间:2015-03-24 23:18:38

标签: node.js express

假设我有一个有三个参数的网址:

/fruit/:arg1/:arg2/:arg3

当我通过时:

/fruit/apples/oranges/bananas

一切都很好。

但如果我通过它:

/fruit/apples//bananas

它不起作用,因为arg2为空。你怎么处理这个?

app.get('/fruit/:arg1/:arg2/:arg3', function(req, res) {
  console.log("url=" + req.url);
});

1 个答案:

答案 0 :(得分:0)

您必须使用正则表达式

app.get(/\/fruit\/(.*)\/(.*)\/(.*)/, function(req, res) {
  var arg1 = req.params[0];
  var arg2 = req.params[1];
  var arg3 = req.params[2];
});