2017-10-12 14 views
1

Je reçois un comportement très étrange avec express.js le code ci-dessous si frappé par plus d'une demande dans un second lancers francs 404 aux clients et en regardant les journaux tout ce que je vois est la suivante:express.js mémoire de téléchargement de fichier fuite

(noeud: 1460) Avertissement: Eventuellement, une fuite de mémoire EventEmitter a été détectée. 11 fichiers écouteurs ajoutés. Utilisation emitter.setMaxListeners() pour augmenter la limite

méthode cible (télécharge un fichier de godet AWS S3 et les tuyaux de la réponse):

exports.download = function (req, res) { 
    var fileName = req.params.fileName; 

    var options = { 
     Bucket: config.s3.bucket, 
     Key: fileName 
    }; 

    res.attachment(fileName); 
    s3.getObject(options).createReadStream().on('error', function(err){ 
     console.log(err); 
    }).pipe(res); 
} 

Répondre

0

il se trouve que formidable se faisait dans le chemin. Une fois que je l'ai filtré de cette demande tout a fonctionné comme prévu.