2015-03-24 64 views
1

比方说,我有一个具有三个参数的URL:处理在高速JS路线null参数

/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); 
 
});

回答

0

你必须使用正则表达式

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

感谢。我想出的另一个解决方案是添加多条路径,使用和不使用参数,并让它们使用参数调用一个函数。它的工作原理很混乱。 – user3246173 2015-03-25 02:22:37