请问express.js有可变长度参数吗?

例如我想要有一个像这样的路线:

/mock/:level1/:level2/(:params)* 

匹配

 /mock/a/b /mock/a/b/p1 /mock/a/b/p1/p2 /mock/a/b/p1/p2/p3 

而第4行中params的值是p1/p2/p3 ,那么我可以做params.split("/")

编辑:

Flask.py可以做到这一点,正是我想要的。 它存在于express.js中吗?

 @app.route('/wcfmock/<level1>/<level2>/<level3>/<path:params>') def catch_all(level1, level2, level3, params): return 'You want params: %s' % params 

Express处理这个。 从http://expressjs.com/guide.html#routing

  "/files/*" /files/jquery.js /files/javascripts/jquery.js 

所以,在你的例子中,(在CoffeeScript中)

 util = require "util" app.get '/a/b/c/*', (req, res) -> res.json util.inspect(req.params) 

假设一个应用程序结构到端口8080 …

 http://localhost:8080/a/b/c/d/e/f 

将返回

 "[ 'd/e/f' ]"