Comment puis-je créer un dossier (si le dossier n'existe pas encore) avant que l'image ne soit téléchargée? Je reçois toujours l'erreur ENOENT
.Créer un dossier avant le téléchargement dans express js
Lorsque je tente ce code:
module.exports = function(router){
router.post('/result', directory.tmp, uploader.single, function(req,res){
//some data manipulation here
});
}
//directory.js
module.exports.tmp = function(req, res, next){
mkdirp('./tmp/' + moment().format('MM-DD-YY') + '/' + moment().format('HH'), function (err) {
if (err) console.error(err)
console.log("==================================");
console.log("tmp folder created");
console.log("==================================");
});
next();
};
Bien que je directory.tmp
d'abord il va créer un dossier si elle n'est pas existant, je pense que uploader.single
est exécuté en premier qui est pourquoi j'ai eu cette erreur. Après avoir reçu l'erreur, c'est l'heure à laquelle mon application a créé le dossier. Donc en d'autres termes, le fichier téléchargé n'a pas été sauvegardé. Comment résoudre ce problème afin qu'il crée d'abord le dossier, puis télécharger le fichier. Btw, j'utilise mkdirp
et multer
.
merci! cela a fonctionné comme prévu. – user3569641
Cool, j'espère qu'avec l'explication vous avez compris pourquoi cela ne fonctionnait pas avant – DevAlien
Ouais. Merci encore. – user3569641