在我的后端应用程序中,我使用express-promise-router
来管理我的路线。例如:
const express = require( 'express' );
const router = require( 'express-promise-router' )();
let app = express();
app.use( router.get( "/hc" , ( req,res,next )=> res.status( 200 ).send( "healthy!" ) ) );
我想在后台应用程序中列出所有路线。由于我使用的是express-promise-router
,所以我不能使用app._router.stack
我面临的问题是;子路由":
app.use('/api/v1', require('./router'));
在router.js:
中
router.use('/api/v1/user', require('./user_r'));
在user_r.js:
中
router.get(...)
由于层次结构的原因,我尝试的所有依赖项,如express-list-routes
和express-list-endpoints
都没有用。
尽管如此,我还是尝试了这里的建议:
- 如何获取Express中的所有注册路线
- 在快递应用程序#3308中列出所有路线
有什么建议吗?
我过去使用过包express列表端点,效果很好。
用法:
const express = require("express");
const expressPromiseRouter = require("express-promise-router");
const listEndpoints = require("express-list-endpoints");
const app = express();
const router = expressPromiseRouter();
router.get("/ping", (req, res) => res.send("pong!"));
app.use(router);
console.log(listEndpoints(app));
您可以使用express list endpoint模块:
const listEndpoints = require('express-list-endpoints');
let app = require('express')();
// ... app usage
console.log(listEndpoints(app));
此外,也许你已经看到了这些,但这可能在以后有用:
- 如何获取Express中的所有注册路线
- 在快递应用程序#3308中列出所有路线