ホームページ >ウェブフロントエンド >jsチュートリアル >Express を使用して Node.js サーバーからファイルをダウンロードするにはどうすればよいですか?
Node.js の Express フレームワークは、サーバーからクライアントにファイルをダウンロードする便利な方法を提供します。これを容易にするには、次の手順に従います。
ファイルを送信するときは、ファイル名や種類などの重要な情報をクライアントに提供するために、正しい HTTP ヘッダーを設定することが重要です。
パフォーマンスを向上させるには、ファイル全体を読み取るのではなく、ファイル ストリームを使用してデータを送信します。同期的に。このアプローチにより、潜在的な遅延やメモリの問題が最小限に抑えられます。
Express には、ファイル ダウンロード用の組み込み関数が含まれるようになりました。
app.get('/download', function(req, res) { const file = `${__dirname}/upload-folder/dramaticpenguin.MOV`; res.download(file); // Sets the appropriate headers and streams the file. });
Express の組み込みダウンロード機能の前に、次のコードはより包括的なファイルのダウンロードを提供しますソリューション:
var path = require('path'); var mime = require('mime'); var fs = require('fs'); app.get('/download', function(req, res) { var file = __dirname + '/upload-folder/dramaticpenguin.MOV'; var filename = path.basename(file); var mimetype = mime.getType(file); res.setHeader('Content-disposition', 'attachment; filename=' + filename); res.setHeader('Content-type', mimetype); var filestream = fs.createReadStream(file); filestream.pipe(res); });
このソリューションには以下が含まれます:
これらの手法に従うことで、Express 経由で Node.js サーバーからファイルを効果的にダウンロードでき、クライアントがダウンロードされたコンテンツを正しく受信して認識できるようになります。
以上がExpress を使用して Node.js サーバーからファイルをダウンロードするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。