クラウド ファイルのコンテンツをダウンロードとして提供するエクスプレス アプリでルートを提供しています。クラウド ファイルの入力ストリームにアクセスできるので、それを直接応答の出力ストリームにパイプしたいと考えています。ただし、入力ストリームをサポートしていないように見えるエクスプレスを使用しています。
私はこれができることを望んでいました:
res.send (cloudInputStream);
しかし、これは機能しません。Express の send は本体またはバッファを取りますが、明らかに入力ストリームではありません。
そのため、res.setHeader() を使用してヘッダーを設定し、生の出力ストリームにアクセスしてから、次のようにします。
cloudInputStream.pipe (responseOutputStream);
これは可能ですか?
または、入力ストリームをバッファーに読み取り、そのバッファーを送信するように指定することもできます。ただし、これはクラウド ファイルの内容全体を一度にメモリに読み込むため、これは避けたいと思います。
何かご意見は?