我想禁用我之前在 app.js 中设置的特定中间件,例如:
app.use(express.bodyParser());
然后我想为特定路由删除该 bodyParser():
app.post("/posts/add", Post.addPost);
谢谢
最佳答案
您可以编写一个函数来检测条件,如下所示:
function maybe(fn) {
return function(req, res, next) {
if (req.path === '/posts/add' && req.method === 'POST') {
next();
} else {
fn(req, res, next);
}
}
}
然后修改app.use语句:
app.use(maybe(express.bodyParser()));
关于node.js - 是否可以禁用/删除 ExpressJS 中特定路由的中间件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19337446/