выход из цепочки промежуточного программного обеспечения, относящегося к конкретному маршруту
У меня есть цепочкапромежуточное программное обеспечение для конкретного маршрута " по этому маршруту, вот так:
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]
промежуточное программное обеспечение, специфичное для маршрута./some/path
Это отличается от серверного промежуточного программного обеспечения, как это:
server.use(mw1);
server.use(mw2);
Где это относится ко всем определенным маршрутам.
Теперь моя проблема в том, что я хочу выйти из цепочки. То есть еслиsuccess
ложно вmw1
Не желаюmw2
быть названным. Еслиsuccess
ложно вmw2
Я не без, чтобы функция маршрута была вызвана. В настоящее время обаmw1
а такжеmw2
кажется, звонят ли или нетnext()
называется - а я не знаю почему.
Как я могу сделать это?