在 Web 开发中,文件下载是一个常见的需求。在 Express.js 中,实现文件下载非常简单,本文将介绍如何在 Express.js 中实现文件下载的方法。
准备工作
在开始实现文件下载之前,我们需要进行一些准备工作:
安装 Express.js:在命令行中执行
npm install express --save
命令安装 Express.js。创建 Express.js 应用:创建一个文件夹,进入该文件夹,在命令行中执行
npm init
命令创建一个 package.json 文件,然后创建一个 app.js 文件,输入以下代码:const express = require('express'); const app = express(); app.listen(3000, () => { console.log('Server is running at http://localhost:3000'); });
上述代码创建了一个 Express.js 应用,并在本地的 3000 端口上启动了应用。
实现文件下载
在 Express.js 中实现文件下载非常简单,只需要使用 res.download() 方法即可。res.download() 方法会将指定的文件作为附件下载到客户端。
下面是一个简单的示例代码,该代码实现了在 Express.js 中下载一个名为 example.txt 的文件:
// javascriptcn.com 代码示例 const express = require('express'); const app = express(); app.get('/download', (req, res) => { const filePath = '/path/to/example.txt'; res.download(filePath); }); app.listen(3000, () => { console.log('Server is running at http://localhost:3000'); });
上述代码中,我们使用了 app.get() 方法创建了一个路由,当客户端访问 /download 路径时,会触发该路由的回调函数。在回调函数中,我们使用 res.download() 方法将指定的文件(/path/to/example.txt)作为附件下载到客户端。
指定下载文件的文件名
在默认情况下,res.download() 方法会使用文件的原始名称作为下载文件的文件名。如果需要指定下载文件的文件名,可以在 res.download() 方法中传递第二个参数,如下所示:
// javascriptcn.com 代码示例 const express = require('express'); const app = express(); app.get('/download', (req, res) => { const filePath = '/path/to/example.txt'; const fileName = 'new_name.txt'; res.download(filePath, fileName); }); app.listen(3000, () => { console.log('Server is running at http://localhost:3000'); });
上述代码中,我们将下载文件的文件名指定为 new_name.txt。
总结
在本文中,我们介绍了如何在 Express.js 中实现文件下载的方法。通过使用 res.download() 方法,我们可以将指定的文件作为附件下载到客户端。同时,我们还介绍了如何指定下载文件的文件名。希望本文对你有所帮助。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/657aa2a2d2f5e1655d50cdfb