基于nodejs+express4.X实现文件下载的实例代码
意外金喜 人气:0之前写了一个关于基于nodejs+express4.X实现文件下载实例,最近需要回顾,就顺便发到随笔上了
在nodejs的express框架中,下载变得非常简单,就一个方法,res.download()
看看api
看看源码
其实底层还是res.sendFile(),头部也已经设定好了.
测试
1.在public文件夹下放入1.jpg图片和1.txt文件
2.在index.js里添加路由方法
router.get('https://img.qb5200.com/download-x/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:3000https://img.qb5200.com/download-x/download?type=1
http://localhost:3000https://img.qb5200.com/download-x/download?type=jpg
http://localhost:3000https://img.qb5200.com/download-x/download?type=txt
第一个会提示错误,第二个会下载图片,第三个会下载txt文件.
加载全部内容