express-list-routes
v1.2.4
Published
List routes for Express
Downloads
38,720
Maintainers
Readme
express-list-routes
List all routes used in Express[3,4,5]
Example App
const express = require('express');
const expressListRoutes = require('express-list-routes');
const app = express();
app.get('/health', fn)
app.use('/admin', router);
router.route('/user')
.post(fn)
.get(fn)
.put(fn);
List all Routes with prefix
expressListRoutes(app, { prefix: '/api/v1' });
// Logs out the following:
// GET /api/v1/health
// POST /api/v1/admin/user
// GET /api/v1/admin/user
// PUT /api/v1/admin/user
Or only log out nested router routes
expressListRoutes(router);
// Logs out the following:
// POST /admin/user
// GET /admin/user
// PUT /admin/user
Use combined paths to pragmatically do something
expressListRoutes
returns array of all routes found in express.
const paths = expressListRoutes(req.app, { logger: false });
paths.forEach((endpoint) => {
if (endpoint.path.endsWith('/')) {
...
}
});
Installation
npm install express-list-routes
Options
You can pass a second argument to set some options
{
prefix: '', // A prefix for router Path
spacer: 7 // Spacer between router Method and Path
logger: console.info // A custom logger function or a boolean (true for default logger, false for no logging)
color: true // If the console log should color the method name
}
FAQ
For Express5 currently nested routes will all be printted out as ~
as theres no way to get parent router path from app object that I'm aware of.