4

如何将未知数量的参数传递给 NodeJS 路由,并将它们保存到数组中?:

http://127.0.0.1:3000/param1/param2/param3...

我想过这样做:

app.get('/*', myHandler);

并且只是标记字符串,但应该有更好的方法。

4

1 回答 1

2

看起来您在 NodeJS 中使用快速路由。如果是这样,您可能想尝试使用正则表达式。如下所示将为您提供 req.params[0] 中的完整路径(/vararg/),但可能有更好的方法:

app.get(/^\/vararg\/(.*)/, function(req,res) {  
    res.send("Got parameters : " + req.params[0]); 
})

因此,如果我在 localhost:3000/vararg/foo/bar/gar 上进行获取,它将发送:

得到参数:foo/bar/gar

或者 localhost:3000/vararg/foo 将产生:

得到参数:foo

然后您可以将参数拆分为其他部分。

于 2012-10-22T18:39:02.737 回答