El framework más conocido de Node.js es Express.js que nos ayuda a manejar la parte de request and response en nuestra aplicación.
Para permitir que el cliente envíe datos usamos en nuestra configuración de la aplicación del archivo app.js lo siguiente:
Código :
var body_parser = require('body-parser') app.use(body_parser()) //Express 4
Y para que el cliente nos envíe archivos podemos implementar el siguiente módulo:
Código :
var multipart = require('connect-multiparty'), app.use(multipart()) //Express 4
Empecemos y creemos un formulario:
Código :
<form action="/upload" method='POST' enctype='multipart/form-data'> <input type="file" name='archivo'> <input type="submit" value='Subir'> </form>
y configuramos la ruta de subida:
Código :
app.post('/upload', function(req, res) { //El modulo 'fs' (File System) que provee Nodejs nos permite manejar los archivos var fs = require('fs') var path = req.files.archivo.path var newPath = 'carpetaArchivos' var is = fs.createReadStream(path) var os = fs.createWriteStream(newPath) is.pipe(os) is.on('end', function() { //eliminamos el archivo temporal fs.unlinkSync(path) }) res.send('¡archivo subido!') })
Esta es una manera fácil de subir archivo con node.js por medio de Expressjs, claro, existen otras maneras pero para mí es la más cómoda.
¿Sabes SQL? ¿No-SQL? Aprende MySQL, PostgreSQL, MongoDB, Redis y más con el Curso Profesional de Bases de Datos que empieza el martes, en vivo.
Por Alfchee el 25 de Abril de 2014
at abortIncoming (http.js:1912:11)
at Socket.serverSocketCloseListener (http.js:1924:5)
at Socket.EventEmitter.emit (events.js:117:20)
at TCP.close (net.js:466:12)
Alguna idea sobre mi error??