ファイルを動的に生成する必要があるため、fsモジュールのwriteStreamを使用する必要があります。しかし、私は貧しいグーグルでサンプルコードを見つけることができませんでした。ごめんなさい。Node.jsのfsモジュールでファイルをダウンロードして表現する方法
具体的には、誰かがリクエストしたときに、MongoDBのデータを含むCSVファイルまたはPDFファイルを提供したいと思います。
誰でも、いくつかのヒントを教えてください。
ありがとうございました。
ファイルを動的に生成する必要があるため、fsモジュールのwriteStreamを使用する必要があります。しかし、私は貧しいグーグルでサンプルコードを見つけることができませんでした。ごめんなさい。Node.jsのfsモジュールでファイルをダウンロードして表現する方法
具体的には、誰かがリクエストしたときに、MongoDBのデータを含むCSVファイルまたはPDFファイルを提供したいと思います。
誰でも、いくつかのヒントを教えてください。
ありがとうございました。
を使用してファイルのメタデータを設定することができ、私はこのように実装することができます。
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.
});
どれくらい簡単ですか。ありがとう。
あなただけの要求ハンドラにDBからデータをストリーム
、FSを必要としないあなたがexpressでContent-Dispositionヘッダ
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
ありがとうございます。私はこのようにしよう。 – Whiteship
ファイルをディスクに保存し、dbリンクからcsvのデータを受け取り、最初にディスクに存在しない場合は 'res.attachment'を使用してファイルを送信することをお勧めします。あなたはすでにデータを持っています。単にヘッダーを設定してから 'res.send(generatedCSVcontent)'を設定するのはなぜですか? –
データを一部のファイルに保存しませんでした。私はちょうどあなたが言ったようにデータを送信します。上記のファイル名は、ヘッダーを要求するためのファイル名です。実際、res.attachment()は最初の答えと非常によく似ています。ファイル名とContent-typeでヘッダーを設定するだけです。 – Whiteship
うん、私の間違い –