2011-07-07 16 views

Respuesta

16

Con la express, puedo aplicar como este.

app.get('/down2', function(req, res){ 
    var filename = 'data.csv'; 
    res.attachment(filename); 
    res.end('hello,world\nkeesun,hi', 'UTF-8'); //Actually, the data will be loaded form db. 
}); 

Cómo es simple. Gracias.

+0

No creo que sea una buena idea guardar el archivo en el disco y luego enviarlo usando 'res.attachment' si recibió datos para usted csv de db link y, en primer lugar, no existe en el disco. Ya tiene los datos, ¿por qué no simplemente establece los encabezados y luego 'res.send (generatedCSVcontent)'? –

+0

No guardé datos en algún archivo. Simplemente envío los datos como dijiste. El nombre de archivo Above es solo el nombre de archivo que se utiliza para solicitar el encabezado. En realidad, res.attachment() es muy similar a la primera respuesta. Simplemente establece el encabezado con el nombre de archivo y tipo de contenido. – Whiteship

+0

sí, mi error –

2

que no es necesario fs, simplemente transmitir los datos desde db en el controlador de solicitudes

puede establecer metadatos del archivo usando Content-Disposition cabecera

Content-Type: image/jpeg 
Content-Disposition: attachment; filename=genome.jpeg; 
    modification-date="Wed, 12 Feb 1997 16:29:51 -0500"; 
Content-Description: a complete map of the human genome 
+0

Muchas gracias. Lo intentaré de esta manera. – Whiteship

Cuestiones relacionadas