Tengo una ruta que se parece a esto:
app.all('/path/:namedParam/*splat?',function(req,res,next){
if(!req.params.length){
// do something when there is no splat
} else {
// do something with splat
}
});
sin embargo, esto no funciona - si llamo path/foo/bar
, llega a la ruta, pero si llamo path/foo
, no funciona.
¿Es posible tener un parámetro de splat opcional o tengo que usar una expresión regular para detectar esto?
Editar :
para ser más claro, estos son los requisitos que estoy tratando de lograr:
- el primer y segundo parámetro son obligatorios
- el primer parámetro es estático, el segundo es un parámetro con nombre.
- se puede agregar cualquier número de parámetros adicionales opcionales y aún así llegar a la ruta.
'/path/:firstParam/*'
. Si lo necesita, hágalo'/path/:firstParam/:secondParam?/*'
.