Я пытаюсь зарегистрировать только определенные события в файле с помощью функции express.logger (...) с помощью специальной функции, и она висит, когда ответ и запрос не соответствуют критерии, которые я установил.Ошибка регистрации с помощью express.logger в node.js
var express = require('express'),
app = express.createServer(
express.logger(function(req, res) {
var status = res.statusCode,
color = 32;
if (status >= 500) color = 31;
else if (status >= 400) color = 33;
else if (status >= 300) color = 36;
if (req.method==='POST' && req.originalUrl!=='/plankton') {
return '\033[90m' + req.method
+ ' ' + req.originalUrl + ' '
+ '\033[' + color + 'm' + res.statusCode
+ ' \033[90m'
+ (new Date - req._startTime)
+ 'ms\033[0m';
}
else if (res.statusCode>=400) {
return '\033[90m' + req.method
+ ' ' + req.originalUrl + ' '
+ ' ' + req.body + ' '
+ '\033[' + color + 'm' + res.statusCode
+ ' \033[90m'
+ (new Date - req._startTime)
+ 'ms\033[0m';
} else {
// what should be inserted here?
// I only want to log the above events...
}
});
)
return '' in else не работает. Это зависает, я предполагаю, что это не позволяет ответить на финиш/отправку.
Возможно, я должен использовать другой метод для регистрации, но мне нравится простота прямого промежуточного программного обеспечения, поскольку он позволяет мне не включать в себя сообщения журнала повсюду - или я могу обойти это, а также получить слушателя для определенные события ..
Любые идеи о том, что я должен иметь в другом? Или предложения по лучшему методу?
Спасибо. Я довольно новичок в асинхронном мире. – Jacob