基于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实用示例 缩址还原
Dec 28 NodeJs
Nodejs使用mysql模块之获得更新和删除影响的行数的方法
Mar 18 NodeJs
Nodejs学习笔记之入门篇
Apr 16 NodeJs
nodejs redis 发布订阅机制封装实现方法及实例代码
Dec 15 NodeJs
用Nodejs搭建服务器访问html、css、JS等静态资源文件
Apr 28 NodeJs
nodejs判断文件、文件夹是否存在及删除的方法
Nov 10 NodeJs
nodejs实现套接字服务功能详解
Jun 21 NodeJs
Nodejs中的JWT和Session的使用
Aug 21 NodeJs
nodejs微信开发之自动回复的实现
Mar 17 NodeJs
nodejs简单抓包工具使用详解
Aug 23 NodeJs
浅谈vue websocket nodeJS 进行实时通信踩到的坑
Sep 22 NodeJs
详解NodeJS模块化
Jun 15 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引用效率问题分析
2012/03/23 PHP
完美解决:Apache启动问题―(OS 10022)提供了一个无效的参数
2013/06/08 PHP
php快速查找数据库中恶意代码的方法
2015/04/01 PHP
php实现微信公众号无限群发
2015/10/11 PHP
laravel5.6中的外键约束示例
2019/10/23 PHP
Javascript中的Split使用方法与技巧
2007/03/09 Javascript
登陆成功后自动计算秒数执行跳转
2014/01/23 Javascript
处理文本部分内容的TextRange对象应用实例
2014/07/29 Javascript
javascript中的正则表达式使用指南
2015/03/01 Javascript
JS+CSS实现大气的黑色首页导航菜单效果代码
2015/09/10 Javascript
EasyUi中的Combogrid 实现分页和动态搜索远程数据
2016/04/01 Javascript
angular双向绑定模拟探索
2016/12/26 Javascript
微信小程序 转发功能的实现
2017/08/04 Javascript
nodejs中方法和模块用法示例
2018/12/24 NodeJs
浅谈layui分页控件field参数接收对象的问题
2019/09/20 Javascript
JS面向对象实现飞机大战
2020/08/26 Javascript
JS前端基于canvas给图片添加水印
2020/11/11 Javascript
JS数组索引检测中的数据类型问题详解
2021/01/11 Javascript
python和C语言混合编程实例
2014/06/04 Python
TensorFlow模型保存/载入的两种方法
2018/03/08 Python
解决python3 Pycharm上连接数据库时报错的问题
2018/12/03 Python
解决Python下imread,imwrite不支持中文的问题
2018/12/05 Python
python自定义线程池控制线程数量的示例
2019/02/22 Python
python openpyxl使用方法详解
2019/07/18 Python
python实现简易淘宝购物
2019/11/22 Python
python 字典访问的三种方法小结
2019/12/05 Python
Django自定义列表 models字段显示方式
2020/04/03 Python
维氏瑞士军刀英国网站:Victorinox英国
2019/07/04 全球购物
android面试问题与答案
2016/12/27 面试题
前台接待员岗位职责
2014/01/02 职场文书
毕业生自我鉴定实例
2014/01/21 职场文书
2014大学生中国梦主题教育学习思想汇报
2014/09/10 职场文书
2014年十一国庆节爱国演讲稿
2014/09/23 职场文书
质监局领导班子对照检查材料思想汇报
2014/09/27 职场文书
学校党员个人问题整改措施思想汇报
2014/10/08 职场文书
法定代表人证明书
2014/11/28 职场文书