基于nodejs+express4.X实现文件下载的实例代码
之前写了一个关于基于nodejs+express4.X实现文件下载实例,最近需要回顾,就顺便发到随笔上了
在nodejs的express框架中,下载变得非常简单,就一个方法,res.download()
首先express命令行生成项目基本框架: 不会的看这里:https://www.jb51.net/article/118537.htm
看看api

看看源码

其实底层还是res.sendFile(),头部也已经设定好了.
测试
1.在public文件夹下放入1.jpg图片和1.txt文件
2.在index.js里添加路由方法
router.get('/download', function (req, res,next) {
var q = req.query;
if (q.type == 'jpg') {
//相对路径
res.download('public/1.jpg');
}else if (q.type == 'txt') {
//绝对路径
res.download(`F:/testredis/public/1.txt`);
}else{
res.send('错误的请求');
}
});
3.浏览器访问:
http://localhost:3000/download?type=1
http://localhost:3000/download?type=jpg
http://localhost:3000/download?type=txt
第一个会提示错误,第二个会下载图片,第三个会下载txt文件.
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
node.js 使用 net 模块模拟 websocket 握手进行数据传递操作示例
这篇文章主要介绍了node.js 使用 net 模块模拟 websocket 握手进行数据传递操作,结合实例形式分析了node.js基于net模块模拟 websocket握手相关原理及进行数据传递具体操作技巧,需要的朋友可以参考下2020-02-02
如何使用axios库在Node.js中进行代理请求(实践案例)
axios是一个强大的基于Promise的HTTP客户端,它在浏览器和Node.js环境中均可使用,本文将介绍如何充分利用axios库,在Node.js中进行代理请求的最佳实践,并通过一个实际案例来展示其应用,感兴趣的朋友一起看看吧2024-03-03


最新评论