Node.js-WebServer开发实践:上传文件
【前言】
文件上传是服务端开发中的必备能力,
在nodejs web server的开发过程中,
可以使用formidable实现文件上传能力,
【qiao-z-upload】
formidable的使用可以查看官网文档,
这里封装了一个npm包,欢迎使用: https://code.insistime.com/#/qiao-z-upload
qiao-z-upload是qiao-z中的upload插件,
依赖于qiao-z这个web server框架
【qiao-z】
qiao-z是一个极简的nodejs web server框架,
详见: https://qiao-z.vincentqiao.com/#/
在qiao-z中可以很方便的实现文件上传,
1. 初始化时传入qiao-z-upload插件
// options
const options = {
// upload,处理文件上传请求,会将文件信息返回到req.body
upload: require("qiao-z-upload"),
};
// app
const app = qz(options);
2. 在req.body.files中获取到上传的文件信息
/**
* upload controller
*/
module.exports = (app) => {
// upload
app.post("/upload", async (req, res) => {
console.log(req.body.files);
});
};
【总结】
1. formidable介绍, https://www.npmjs.com/package/formidable
2. qiao-z-upload介绍, https://code.insistime.com/#/qiao-z-upload
3. qiao-z中实现文件上传, https://qiao-z.vincentqiao.com/#/plugins/upload
相关推荐
Node.js-WebServer开发实践:使用PM2-Cluster模式提升接口QPS
【前言】 pm2是nodejs进程管理工具, https://pm2.keymetrics.io/ 介绍详见之前的一篇文章: https://blog.csdn.net/uikoo9/article/details/79018750 , 本文介绍下pm2的cluster模式, 并使用pm2的clus
Node.js-WebServer开发实践:使用autocannon进行接口压测
【前言】 AutoCannon是基于Node.js的接口压测工具, https://www.npmjs.com/package/autocannon 【安装】 【cli使用】 AutoCannon可以通过cli的方式使用, 其中各参数的含义可以直接输入autocannon查看, 例如10个并发连接,
Node.js-开发实践:图片处理
【前言】 使用nodejs的过程中会遇到一些处理图片的场景, 比如上传图片时进行压缩, 或者nodejs开发客户端本处理图片等, 本文介绍下nodejs常见的图片处理操作。 【常见图片处理库】 nodejs常见的图片处理库如下, 可以看到sharp从各方面都遥遥领先 npm包 github地址 gi
Node.js-开发实践:下载文件
【前言】 下载文件是Node.js中最常见的功能, 但实际开发中下载文件也会隐藏各种各样的坑。 【原始代码】 如果在网络搜索Node.js下载文件代码, 大概会搜到类似下面的代码片段, 本文从这里开始,陆续优化下载文件这个功能。 上面的代码片段可以看到: 1.兼容了Node.js原生的http和ht
Node.js-开发实践:使用健壮的FS
【前言】 fs模块是nodejs中最常见的模块, 可是fs的使用经常会有各种意想不到的坑。 【高性能FS】 其中之一是没有使用高性能的fs, 导致在electron应用中造成卡顿, fs模块有3种使用方式, callback方式 1\. 书写会导致回调地狱 2\. 体现nodejs事件驱动,非阻塞i