基于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与Mysql的交互示例代码
Aug 18 NodeJs
使用forever管理nodejs应用教程
Jun 03 NodeJs
Nodejs Post请求报socket hang up错误的解决办法
Sep 25 NodeJs
深入浅析NodeJs并发异步的回调处理
Dec 21 NodeJs
nodejs入门教程五:连接数据库的方法分析
Apr 24 NodeJs
详解使用vscode+es6写nodejs服务端调试配置
Sep 21 NodeJs
nodejs调取微信收货地址的方法
Dec 20 NodeJs
利用nodeJs anywhere搭建本地服务器环境的方法
May 12 NodeJs
Nodejs使用Mongodb存储与提供后端CRD服务详解
Sep 04 NodeJs
Nodejs核心模块之net和http的使用详解
Apr 02 NodeJs
nodejs二进制与Buffer的介绍与使用
Jul 11 NodeJs
nodejs实现UDP组播示例方法
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
php通用防注入程序 推荐
2011/02/26 PHP
色色整理的PHP面试题集锦
2012/03/08 PHP
PHP抽象类 介绍
2012/06/13 PHP
PHP实现提取一个图像文件并在浏览器上显示的代码
2012/10/06 PHP
php实现计数器方法小结
2015/01/05 PHP
PHP7使用ODBC连接SQL Server2008 R2数据库示例【基于thinkPHP5.1框架】
2019/05/06 PHP
Nigma vs Alliance BO5 第四场2.14
2021/03/10 DOTA
input 高级限制级用法
2009/03/26 Javascript
js跨域和ajax 跨域问题的实现思路
2009/09/05 Javascript
根据鼠标的位置动态的控制层的位置
2009/11/24 Javascript
jQuery版Tab标签切换
2011/03/16 Javascript
jquery mobile的触控点击事件会多次触发问题的解决方法
2014/05/08 Javascript
一个JavaScript用逗号分割字符串实例
2014/09/22 Javascript
JavaScript中实现PHP的打乱数组函数shuffle实例
2014/10/11 Javascript
Javascript连接Access数据库完整实例
2015/08/03 Javascript
ionic App问题总结系列之ionic点击系统返回键退出App
2017/08/19 Javascript
浅谈Angular路由守卫
2017/08/26 Javascript
JS实现颜色的10进制转化成rgba格式的方法
2017/09/04 Javascript
JavaScript使用闭包模仿块级作用域操作示例
2019/01/21 Javascript
Servlet返回的数据js解析2种方法
2019/12/12 Javascript
JavaScript Blob对象原理及用法详解
2020/10/14 Javascript
[01:03:27]NAVI vs EG 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
Python生成随机数的方法
2014/01/14 Python
Python抓取百度查询结果的方法
2015/07/08 Python
Python2包含中文报错的解决方法
2018/07/09 Python
Python使用pyautogui模块实现自动化鼠标和键盘操作示例
2018/09/04 Python
详解python3 + Scrapy爬虫学习之创建项目
2019/04/12 Python
python sorted函数的小练习及解答
2019/09/18 Python
Kears 使用:通过回调函数保存最佳准确率下的模型操作
2020/06/17 Python
详解html2canvas截图不能截取圆角图片的解决方案
2018/01/30 HTML / CSS
行政经理的岗位职责
2013/11/23 职场文书
大学毕业生求职自荐书
2014/06/05 职场文书
赢在中国观后感
2015/06/02 职场文书
铁人观后感
2015/06/16 职场文书
分析ZooKeeper分布式锁的实现
2021/06/30 Java/Android
Golang使用Panic与Recover进行错误捕获
2022/03/22 Golang