Ich habe ein Stück Code wie folgt aus:NodeJS Async Loop - nicht erreicht endgültige Fehlerblock
var async = require('async');
var ftp = require('jsftp');
async.waterfall([
function(callback){
console.log("Step 1");
// fetch data from DB
callback(null);
},
function(callback){
console.log("Step 2");
// FTP to remote location using a third party library
ftp.put(fileName, remoteLocation, function(err) {
if (!err){
callback(null, "File transferred successfully!")
}else {
callback(err, null)
}
});
}],
function(err, result){
if(err){
console.log("Step 2.5")
console.log(err);
}else{
console.log("Step 3");
}
callback(err, result);
});
Nun, was ich erwarte, ist, wenn es in der FTP-Datei ein Fehler ist (lassen Sie uns das FTP sagen Server ist down) sollte die Schleife zu "Schritt 2.5" kommen.
Stattdessen gibt es nur einen Fehler (ECONNRESET, wenn der Server heruntergefahren ist), und es kommt nie zu dem letzten Block, wo es einen Rückruf sendet.
Gibt es eine Möglichkeit, die asynchrone Schleife zum logischen Abschluss zu zwingen?
so vielen Dank! – swateek
Jederzeit! Froh, dass ich Helfen kann! – mscheker