Transmitir el archivo cargado con Express.js a través de gm para eliminar la escritura doble
Estoy usandoExpress.js
y tengo una ruta para cargar imágenes que luego necesito cambiar de tamaño. Actualmente solo dejoExpress
escribir el archivo en el disco (que creo que utilizanode-formidable
debajo de las cubiertas) y luego cambiar el tamaño usandogm
(http://aheckmann.github.com/gm/) que escribe una segunda versión en el disco.
gm(path)
.resize(540,404)
.write(dest, function (err) { ... });
He leído que puedes conseguir unanode-formidable
secuencia de archivos antes de que lo escriba en el disco, y desdegm
Puedo aceptar una secuencia en lugar de solo una ruta, debería poder pasar este derecho eliminando la doble escritura en el disco.
Creo que necesito anularform.onPart
pero no estoy seguro de dónde (debería hacerse comoExpress
middleware?) y no estoy seguro de cómo obtener una retención deform
o qué hacer exactamente con elpart
. Este es el código del esqueleto que he visto en algunos lugares:
form.onPart = function(part) {
if (!part.filename) { form.handlePart(part); return; }
part.on('data', function(buffer) {
});
part.on('end', function() {
}
}
¿Puede alguien ayudarme a juntar estas dos piezas? ¡Gracias!