2011-07-07 7 views
8

Dosya dinamik olarak oluşturulduğundan, belki de fs modülleri'nin writeStream işlevini kullanmalıyım. Ama benim fakir googling ile herhangi bir örnek kod bulamadık. Afedersiniz.Node.js'in fs modülü ve express ile bir dosya indirme nasıl yapılır

Daha spesifik olarak, birisi istediğinde MongoDB'deki verilerimle bir CSV dosyası veya bir PDF dosyası vermek istiyorum.

Herkes, lütfen bana bazı ipuçları verin.

Teşekkürler.

cevap

16

kullanarak dosya meta ayarlayabilirsiniz istek işleyicisindeki db

veri akışı, fs gerekmez, böyle uygulayabilirsiniz. Bu, ne kadar basittir. Teşekkürler.

+0

Ben diske dosyayı kaydedin ve sonra db bağlantısından csv için verileri alıp almadığını 'res.attachment' kullanarak göndermek iyi bir fikir sanmıyorum ve ilk etapta diskte yok. Zaten verilere sahipsin, neden sadece üstbilgileri değil, daha sonra 'res.send (generatedCSVcontent) 'yi ayarlamıyorsun? –

+0

Verileri bir dosyaya kaydetmedim. Verileri söylediğiniz gibi gönderdim. Yukarıdaki dosya adı sadece başlık istemek için kullanılan dosya adıdır. Aslında, res.attachment() ilk cevapla çok benzer. Sadece üstbilgiyi dosya adı ve İçerik türü ile ayarladı. – Whiteship

+0

evet, benim hatam –

2

sen sadece express ile Content-Disposition başlığını

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

Çok teşekkürler. Bu şekilde deneyeceğim. – Whiteship