基于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(二)--- Node.js事件模块
May 21 NodeJs
nodejs 实现模拟form表单上传文件
Jul 14 NodeJs
基于NodeJS的前后端分离的思考与实践(二)模版探索
Sep 26 NodeJs
nodejs下打包模块archiver详解
Dec 03 NodeJs
轻松创建nodejs服务器(4):路由
Dec 18 NodeJs
轻松创建nodejs服务器(10):处理POST请求
Dec 18 NodeJs
NodeJs测试框架Mocha的安装与使用
Mar 28 NodeJs
nodejs multer实现文件上传与下载
May 10 NodeJs
nodejs利用ajax实现网页无刷新上传图片实例代码
Jun 06 NodeJs
nodejs接入阿里大鱼短信验证码的方法
Jul 10 NodeJs
NodeJS使用Range请求实现下载功能的方法示例
Oct 12 NodeJs
nodejs dgram模块广播+组播的实现示例
Nov 04 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
dede3.1分页文字采集过滤规则详说(图文教程)续四
2007/04/03 PHP
PHP伪造referer实例代码
2008/09/20 PHP
javascript addBookmark 加入收藏 多浏览器兼容
2009/08/15 Javascript
浅析return false的正确使用
2013/11/04 Javascript
jQuery表格插件datatables用法总结
2014/09/05 Javascript
jquery插件hiAlert实现网页对话框美化
2015/05/03 Javascript
jquery.map()方法的使用详解
2015/07/09 Javascript
js中跨域方法原理详解
2015/07/19 Javascript
jQuery验证插件validate使用详解
2016/05/11 Javascript
在javascript中创建对象的各种模式解析
2016/05/16 Javascript
JS实现的相册图片左右滚动完整实例
2016/11/23 Javascript
详解JavaScript 中getElementsByName在IE中的注意事项
2017/02/21 Javascript
JS实现图片上传多次上传同一张不生效的处理方法
2018/08/06 Javascript
微信小程序上传多图到服务器并获取返回的路径
2019/05/05 Javascript
JS块级作用域和私有变量实例分析
2019/05/11 Javascript
JS实现音乐钢琴特效
2020/01/06 Javascript
Vue组件间数据传递的方式(3种)
2020/07/13 Javascript
浅谈js中的attributes和Attribute的用法与区别
2020/07/16 Javascript
JQuery使用数组遍历跳出each循环
2020/09/01 jQuery
vue-simple-uploader上传成功之后的response获取代码
2020/09/07 Javascript
HTML元素拖拽功能实现的完整实例
2020/12/04 Javascript
[02:43]中国五虎出征TI3视频
2013/08/02 DOTA
python中循环语句while用法实例
2015/05/16 Python
Python松散正则表达式用法分析
2016/04/29 Python
python类的继承实例详解
2017/03/30 Python
python如何为创建大量实例节省内存
2018/03/20 Python
Flask框架Flask-Login用法分析
2018/07/23 Python
Python Sqlalchemy如何实现select for update
2020/10/12 Python
CSS3实现多背景展示效果通过CSS3定位多张背景
2014/08/10 HTML / CSS
境外导游求职信
2014/02/27 职场文书
投资协议书范本
2014/04/21 职场文书
宾馆仓管员岗位职责
2014/07/27 职场文书
工人先锋号申报材料
2014/12/29 职场文书
创业计划书之养殖业
2019/10/11 职场文书
python 批量压缩图片的脚本
2021/06/02 Python
CDPR谈《巫师》新作用虚幻5原因 称不会为Epic独占
2022/04/06 其他游戏