Created
December 13, 2017 22:41
-
-
Save Kiri23/699f91830d2defbd46df1ade0c5b1fed to your computer and use it in GitHub Desktop.
Node.js download file to public
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var filename = __dirname+'/download2.pdf' | |
var fs_write_stream = fs.createWriteStream(filename); | |
// De la unica forma que pueden ocurrir errores aqui es que uno de los dos stream no se pueda abrir para descargar o para escribir archivos | |
/** create read stream */ // Esta es la parte que yo te digo. Crea un ReadStream. | |
var readstream = gfs.createReadStream({ | |
// the file to download | |
filename: files[0].filename, | |
root: "templateFiles" // name of collection where all files resides in mongdb | |
}); | |
// Como la logica funciona para bajar este archivo, es que primero yo abro un archivo y lo guardo localmente con el file system de node.js. Luego yo escribo a ese archivo y cuando yo termino de escribir a ese archivo, lo descargo con el express helper method y luego que lo descarque, lo borro localmente de la computadora. | |
readstream.pipe(fs_write_stream); | |
fs_write_stream.on('close',()=>{ | |
console.log("Cerrando de escribir imagen") | |
return res.download(filename,files[0].metadata.originalname,(err)=>{ | |
if (err){ | |
console.log(err.message,'\n') | |
// console.log(err) | |
err.customMsg = "Error al descargar el archivo. Intentelo nuevamente" | |
return next(err) | |
}else { | |
console.log("Se guardo el objeto.") |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment