Déplacez le Fichier dans ExpressJS/NodeJS
Je suis en train de déplacer le fichier téléchargé à partir de /tmp
à home
répertoire à l'aide de NodeJS/ExpressJS:
fs.rename('/tmp/xxxxx', '/home/user/xxxxx', function(err){
if (err) res.json(err);
console.log('done renaming');
});
Mais il ne fonctionne pas et aucune erreur rencontrée. Mais lorsque le nouveau chemin d'accès est également dans /tmp
, qui va travailler.
Jutilise Ubuntu, home
est dans une partition différente. Un correctif?
Grâce
OriginalL'auteur JR Galia | 2013-07-15
Vous devez vous connecter pour publier un commentaire.
Oui, fs.renommer ne pas déplacer les fichiers entre deux disques/partitions. C'est le corriger comportement.
fs.rename
fournit des fonctionnalités identiques àrename(2)
dans linux.Lire la question connexe posté ici.
Pour obtenir ce que vous voulez, ce que vous devez faire quelque chose comme ceci:
OriginalL'auteur user568109
Une autre façon est d'utiliser des
fs.writeFile
.fs.unlink
en rappel de supprimer les fichiers temporaires du répertoire tmp.OriginalL'auteur anvarik
Mis à jour ES6 solution prête à l'utilisation avec des promesses et des async/await:
OriginalL'auteur David
Cet exemple tiré de: Node.js dans l'Action
OriginalL'auteur Teoman shipahi