Tru*_*ran 1 routes node.js express
有谁知道一种配置express的方法来自动在所有路由之前添加前缀?例如,目前我有:
/
/route1
/route2
但是,我想添加一个前缀,如:
/prefix/
/prefix/route1
/prefix/route2
现在,我需要为prefix所有路线手动定义,但希望采用一种更自动化/可配置的方式。有人可以帮忙吗?
提前致谢!
路由.js
module.exports = (app) => {
app.post('/route', (req, res) => {
res.status(status);
res.send(data);
});
app.get('/route', (req, res) => {
res.status(status);
res.send(data);
});
return app;
};
Run Code Online (Sandbox Code Playgroud)
服务器.js
const router = express.Router()
const routes = require('./routes')(router, {});
app.use('/PREFIX_HERE', routes)
Run Code Online (Sandbox Code Playgroud)
参考:https : //expressjs.com/en/guide/using-middleware.html
您可以为此使用express Router()。
您可以像使用Express应用一样使用路由器。因此,例如:
router.use(() => {}); // General middleware
router.get('/route1', () => {})
router.get('/route2', () => {})
router.post('/route2', () => {})
Run Code Online (Sandbox Code Playgroud)
然后使用以下命令将路由器连接到您的快速应用程序:
app.use('/prefix', router);
Run Code Online (Sandbox Code Playgroud)
https://expressjs.com/cn/4x/api.html#router