[英]Multiple routes in node.js and URL endpoints
app.use('/api', require('./api'));
app.use('/', require('./cms'));
第一条路线用于我的公共api,第二条路线是cms仪表板。 但这是行不通的,因为localhost:80 / api仍然会加载第二条路由。
如何解决呢? 我知道我可以做app.use('/cms', require('./cms'));
但路由将是localhost:80 / cms / blog对我来说不合适。
我认为您传递给app.use的函数具有3个参数,第三个参数是next()回调,它将调用下一个中间件。
如果您按以下方式定义函数,并且不调用next,则它不应触发下一个中间件(也可能路由)。
app.use('/api', function(req, res, next) {
require('./api');
});
无论您的需求文件包含什么,它都可能会接收“ next”功能作为其参数。 不要叫它。
更新:此外,在您的中间件中,调用res.end()退出其他路由
您的./cms文件中包含什么? 可能是服务器没有关闭响应,所以它继续进行下一条路由。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.