带斜杠的Express.js路由参数

时间:2013-05-30 06:56:12

标签: node.js express

我有一个提供文件列表的应用程序。

申请必须回应以下路线:

/company/:id
/company/:id/dir
/company/:id/dir/dir

此处/company/:id是未指定path的路由,例如root目录。我在想app.get('/company/:id/:path', ...这样的东西显然不起作用。

如何定义响应所有示例的路线?

1 个答案:

答案 0 :(得分:52)

使用/company/:id*(注意尾随星号)。

完整示例

var express = require('express')();

express.use(express.router);

express.get('/company/:id*', function(req, res, next) {
    res.json({
        id: req.params['id'],
        path: req.params[0]
    });    
});

express.listen(8080);