W poniższym fragmencie chciałbym sprawdzić pola w pierwszej asynchronicznej metodzie.Obsługa błędów za pomocą Node.js, Async i Formidable
Jeśli nie są one prawidłowe, chciałbym natychmiast zwrócić błąd użytkownikowi.
Jak to zrobić?
var form = new formidable.IncomingForm();
async1.series([
function (callback) {
form.parse(req);
form.on('field', function (name, val) {
// Get the fields
});
form.on('fileBegin', function (name, file) {
if (file.name !== "") {
file.path = __dirname + '/upload/' + file.name;
}
});
callback();
},
function (callback) {
form.on('file', function (name, file) {
try {
// Do something with the file using the fields retrieved from first async method
}
catch (err) {
logger.info(err);
}
});
callback();
}
], function (err) {
//the upload failed, there is nothing we can do, send a 500
if (err === "uploadFailed") {
return res.send(500);
}
if (err) {
throw err;
}
return res.status(200);
});
Możesz powrócić zwrotnego z błędem 'zwrotna zwrot (ERR)' jeśli natychmiast z bloku, w którym jest sprawdzana na boisku, że zwrotna będzie bezpośrednio wykonać swoje 'oddzwonienia uchwytu zakresie funkcji gdzie wysyłanych' kod odpowiedzi ". – Zeeshan