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中文网其他相关文章!