2016-10-28 4 views
1

Ich bin etwas neu in der Programmierung im Allgemeinen. Mein Problem ist, dass ich eine Datei herunterladen möchte und danach etwas mache.Etwas nach dem Herunterladen einer Datei

Danbooru.search(tag, function (err, data) { //search for a random image with the given tag 
    data.random() //selects a random image with the given tag 
     .getLarge() //get's a link to the image 
     .pipe(require('fs').createWriteStream('random.jpg')); //downloads the image 
    }); 

jetzt möchte ich eine console.log nach dem Herunterladen der Datei tun. Ich möchte nicht mit setTimeout arbeiten, da die Dateien unterschiedlich lange heruntergeladen werden müssen.

Danke für die Hilfe.

Antwort

1

Sehen Sie, ob dies für Sie funktioniert. Einfach die Anfrage in eine Variable speichern und auf das Ereignis finish prüfen.

Danbooru.search(tag, function (err, data) { 
     var stream = data.random() 
      .getLarge() 
      .pipe(require('fs').createWriteStream('random.jpg')); 

      stream.on('finish', function() { console.log('file downloaded'); }); 
     }); 
Verwandte Themen