2013-05-30 2 views
20

У меня есть приложение, которое обслуживает списки файлов.Параметр route.js с косой чертой

Приложение должно отвечать на следующие маршруты:

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

Здесь /company/:id это маршрут, не path указанной директории например root. Я думал о чем-то вроде app.get('/company/:id/:path', ..., который, очевидно, не работает.

Как определить маршрут, отвечающий всем примерам?

+0

'/ компания /: идентификатор/*' делает эту работу? – Prinzhorn

+0

То же, что и: http://stackoverflow.com/questions/10020099/express-js-routing-optional-spat-param/14481168? –

+0

@ Andreas Hultgren кажется так, помечен. – Gerstmann

ответ

43

Используйте /company/:id* (отметьте заднюю звездочку).

Полный пример

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

express.use(express.router); 

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

express.listen(8080); 
+4

Или '/ company /: id *' (без косой черты). – robertklep

+0

@robertklep идеально подходит для всех случаев – Prinzhorn

Смежные вопросы