📜  从 express res.download 响应下载文件 - Javascript (1)

📅  最后修改于: 2023-12-03 15:36:13.294000             🧑  作者: Mango

从express res.download响应下载文件 - Javascript

在Web开发中,有时需要将文件提供给用户进行下载。在基于Node.js的Express应用程序中,可以使用res.download函数来实现这一功能。

res.download

res.download函数的签名如下:

res.download(path [, filename] [, options] [, fn])

可以将状态代码设置为200,并将Content-Disposition标头设置为附件,以指示Web浏览器自动下载文件。该函数有四个参数:

  • path:要提供给用户的文件的路径。
  • filename(可选):提供给用户的文件名。
  • options(可选):以对象形式提供,允许您自定义响应头。
  • fn(可选):当下载完成或发生错误时要调用的回调函数。
下载文件示例

下面是一个使用res.download响应下载文件的示例:

const express = require('express');
const app = express();

app.get('/download', (req, res) => {
  const file = `${__dirname}/example.txt`;
  res.download(file); 
});

app.listen(3000, () => {
  console.log('Server started on port 3000');
});

在上面的示例中,我们使用HTTP GET请求来触发文件的下载。当用户访问/download路径时,文件example.txt将会被提供给用户进行下载。

结论

使用res.download函数是将文件提供给用户进行下载的简单而强大的方式。您可以使用这个函数来提供各种文件类型,并为用户指定自定义文件名。了解如何使用这个函数是Web开发中非常有用的技能之一。