基于nodejs+express4.X实现文件下载的实例代码


Posted in NodeJs onJuly 13, 2017

之前写了一个关于基于nodejs+express4.X实现文件下载实例,最近需要回顾,就顺便发到随笔上了

在nodejs的express框架中,下载变得非常简单,就一个方法,res.download()

首先express命令行生成项目基本框架: 不会的看这里:https://3water.com/article/118537.htm

看看api

基于nodejs+express4.X实现文件下载的实例代码

看看源码

基于nodejs+express4.X实现文件下载的实例代码

其实底层还是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文件.

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

NodeJs 相关文章推荐
Nodejs实现的一个简单udp广播服务器、客户端
Sep 25 NodeJs
NodeJs中的VM模块详解
May 06 NodeJs
nodejs基础应用
Feb 03 NodeJs
Nodejs 发送Post请求功能(发短信验证码例子)
Feb 09 NodeJs
详谈Angular路由与Nodejs路由的区别
Mar 05 NodeJs
nodejs连接mysql数据库简单封装示例-mysql模块
Apr 10 NodeJs
nodejs处理图片的中间件node-images详解
May 08 NodeJs
NodeJS、NPM安装配置步骤(windows版本) 以及环境变量详解
May 13 NodeJs
nodejs6下使用koa2框架实例
May 18 NodeJs
nodejs实现大文件(在线视频)的读取
Oct 16 NodeJs
NodeJS开发人员常见五个错误理解
Oct 14 NodeJs
详解nodejs的express如何自动生成项目框架
Jul 12 #NodeJs
nodejs中sleep功能实现暂停几秒的方法
Jul 12 #NodeJs
nodejs中解决异步嵌套循环和循环嵌套异步的问题
Jul 12 #NodeJs
深入学习nodejs中的async模块的使用方法
Jul 12 #NodeJs
nodejs后台集成ueditor富文本编辑器的实例
Jul 11 #NodeJs
nodejs开发微信小程序实现密码加密
Jul 11 #NodeJs
nodejs接入阿里大鱼短信验证码的方法
Jul 10 #NodeJs
You might like
PHP去掉从word直接粘贴过来的没有用格式的函数
2012/10/29 PHP
解析如何在PHP下载文件名中解决乱码的问题
2013/06/20 PHP
使用php计算排列组合的方法
2013/11/13 PHP
php array_reverse 以相反的顺序返回数组实例代码
2017/04/11 PHP
firebug的一个有趣现象介绍
2011/11/30 Javascript
js 判断js函数、变量是否存在的简单示例代码
2014/03/04 Javascript
jQuery DOM删除节点操作指南
2015/03/03 Javascript
完美JQuery图片切换效果的简单实现
2016/07/21 Javascript
AngularJS ng-bind-template 指令详解
2016/07/30 Javascript
高效的jQuery代码编写技巧总结
2017/02/22 Javascript
详解Vue基于 Nuxt.js 实现服务端渲染(SSR)
2018/04/05 Javascript
解决vue中post方式提交数据后台无法接收的问题
2018/08/11 Javascript
webpack打包nodejs项目的方法
2018/09/26 NodeJs
CentOS7中源码编译安装NodeJS的完整步骤
2018/10/13 NodeJs
node.js使用stream模块实现自定义流示例
2020/02/13 Javascript
[41:52]2018DOTA2亚洲邀请赛3月29日小组赛B组Effect VS Secret
2018/03/30 DOTA
[55:32]2018DOTA2亚洲邀请赛 4.4 淘汰赛 EG vs LGD 第二场
2018/04/05 DOTA
[01:12:08]LGD vs OG 2019国际邀请赛淘汰赛 胜者组 BO3 第一场 8.24
2019/09/10 DOTA
12步入门Python中的decorator装饰器使用方法
2016/06/20 Python
Python生成器以及应用实例解析
2018/02/08 Python
Tensorflow的可视化工具Tensorboard的初步使用详解
2018/02/11 Python
Window环境下Scrapy开发环境搭建
2018/11/18 Python
MSC邮轮官方网站:加勒比海、地中海和世界各地的假期
2018/08/27 全球购物
幼儿园新学期寄语
2014/01/18 职场文书
校园十大歌手策划书
2014/02/01 职场文书
小学毕业典礼主持词
2014/03/27 职场文书
热爱祖国演讲稿
2014/05/04 职场文书
服务口号大全
2014/06/11 职场文书
公司行政专员岗位职责
2014/08/24 职场文书
护士长2014年度工作总结
2014/11/11 职场文书
商务邀请函
2015/01/30 职场文书
财务人员个人工作总结
2015/02/27 职场文书
2016学校先进党组织事迹材料
2016/02/29 职场文书
2016年“12.4”法制宣传日活动总结
2016/04/01 职场文书
会计专业2019暑假实习报告
2019/06/21 职场文书
nginx location优先级的深入讲解
2021/03/31 Servers