本多さん

ありがとうございます

現状、Node.jsなどのアプリケーションがファイルダウンロードを実装するのは、主に以下の2パターンが考えられます。
>
> 1. データベースのデータをCSV出力する場合など、データを動的に作成してダウンロードする場合
> 2. 認証されたユーザにのみ指定の静的ファイルをダウンロードさせる場合
>
> 1番のケースは、大津さんの提示された方法(+ Streamのバッファサイズの調整やcluster化)で対応します。
>
> 2番のケースの場合なら、別のアプローチがあって、
> Reverse Proxy に Nginx がいる前提になりますが、認証のみを Node.js のアプリで実装して、
> あとは X-Accel-Redirect ヘッダを付与して、レスポンスを返してあげれば良いです。
>

最終的にやりたいことは
1.のケースに該当する、DBから取得した小さいテキストデータをJSONで返す。
2.のケースに該当する、静的な画像ファイルを認可させてダウンロードさせる
で、整理していただいた内容どおりです。

悩ましいのは2のケースで、さばききれるならnodeだけでも良いと考えており、この質問の発端になっています。
いろんな要因、要求によってケースバイケースだと思いますので、nodeの静的コンテンツ用のモジュールや、nginxなどいろいろ評価して決めたいと思います。

-- 



メールによる返信