sair da cadeia de middleware específico de rota em express / nodejs
Eu tenho uma cadeia de "middleware específico de rota" para esta rota, da seguinte forma:
var express = require('express');
var server = express();
var mw1 = function(req, resp, next) {
//do stuff
if (success) {
next();
} else {
req.connection.destroy(); //without calling next()
}
};
var mw2 = function(req, resp, next) {
//do stuff
if (success) {
next();
} else {
req.connection.destroy(); //without calling next()
}
};
server.post('/some/path', [mw1, mw2], function(req, resp) {
//write response
});
[mw1, mw2]
são o middleware específico para a rota/some/path
.
Isso é diferente do middleware do servidor como este:
server.use(mw1);
server.use(mw2);
Onde se aplica a todas as rotas definidas.
Agora meu problema é que eu quero sair da cadeia. Ou seja E sesuccess
é falso emmw1
, Eu não desejo paramw2
ser chamado. E sesuccess
é falso emmw2
, Eu não sem para a função de rota para ser chamado. Atualmente, tantomw1
emw2
parece estar sendo chamado ou nãonext()
é chamado - e eu não sei porque.
Como posso fazer isso?