Te recomendamos que pruebes esta solución en un entorno controlado antes de pasarlo a producción, saludos.
Solución:
aplicación.js
var express = require('express'),
dogs = require('./routes/dogs'),
cats = require('./routes/cats'),
birds = require('./routes/birds');
var app = express();
app.use('/dogs', dogs);
app.use('/cats', cats);
app.use('/birds', birds);
app.listen(3000);
perros.js
var express = require('express');
var router = express.Router();
router.get('/', function(req, res)
res.send('GET handler for /dogs route.');
);
router.post('/', function(req, res)
res.send('POST handler for /dogs route.');
);
module.exports = router;
Cuando var app = express()
se llama, se devuelve un objeto de aplicación. Piensa en esto como el aplicación principal.
Cuando var router = express.Router()
se llama, un poco diferente mini aplicación es regresado. La idea detrás de la mini aplicación es que cada ruta en su aplicación puede volverse bastante complicada, y se beneficiaría de mover todo ese código a un archivo separado. El enrutador de cada archivo se convierte en un mini aplicaciónque tiene una estructura muy similar a la aplicación principal.
En el ejemplo anterior, el código para el /perros La ruta se ha movido a su propio archivo para que no sature el aplicación principal. El código para /gatos y /aves se estructurarían de manera similar en sus propios archivos. Al separar este código en tres miniaplicacionespuede trabajar en la lógica de cada uno de forma aislada y no preocuparse por cómo afectará a los otros dos.
Si tiene un código (middleware) que pertenece a las tres rutas, puede ponerlo en el aplicación principalantes de app.use(...)
llamadas Si tiene un código (middleware) que pertenece solo a una de esas rutas, puede colocarlo en el archivo solo para esa ruta.
Express 4.0 viene con el nuevo enrutador. Como se menciona en el sitio:
La clase express.Router se puede usar para crear manejadores de ruta montables modulares. Una instancia de enrutador es un sistema de enrutamiento y middleware completo; por esta razón, a menudo se la denomina “mini-aplicación”.
Hay un buen artículo en https://scotch.io/tutorials/learn-to-use-the-new-router-in-expressjs-4 que describe las diferencias y lo que se puede hacer con los enrutadores.
Para resumir
Con los enrutadores puedes modularizar tu código más fácilmente. Puede utilizar enrutadores como:
- Rutas Básicas: Inicio, Acerca de
- Enrutar Middleware para registrar solicitudes en la consola
- Ruta con Parámetros
- Ruta Middleware para parámetros para validar parámetros específicos
- Valida un parámetro pasado a una ruta determinada
Nota:
Él app.router
El objeto, que se eliminó en Express 4, ha regresado en Express 5. En la nueva versión, es solo una referencia al enrutador Express base, a diferencia de Express 3, donde una aplicación tenía que cargarlo explícitamente.
app.route('/book')
.get(function (req, res)
res.send('Get a random book')
)
.post(function (req, res)
res.send('Post a random book')
)
Como en el ejemplo anterior, podemos agregar diferentes métodos de solicitud HTTP en una ruta.
Tienes la opción de animar nuestra tarea ejecutando un comentario y dejando una valoración te damos las gracias.