nodejs如何将前端传递的文件进行保存在本地或者服务器

一、nodejs获取前端传递的文件file有三种,这里我们推荐使用koa-body

1 // 安装依赖 koa-body
2 npm install koa-body
3 // 在入口文件 app.js中进行挂载使用
4 const { koaBody } = require('koa-body');
5 app.use(koaBody({ multipart: true }));

二、具体操作

const fs = require('fs');
const path = require('path');
// 在路由的接口中,通过ctx.request.files即可拿到上传的files文件 const file = ctx.request.files.file;//获取file
const reader = fs.createReadStream(file.filepath);//读取文件,返回文件流
let filePath = path.join(__dirname, 'public/upload/')+`${new Date().getTime()}${file.originalFilename}`;//创建文件的存储路径,并对文件进行重命名 const upStream = fs.createWriteStream(filePath);// 创建可写流,传入路径
reader.pipe(upStream);//通过管道,完成存储

三、映射,使前端可以访问上传的静态文件

安装依赖  koa-static

1 // 安装依赖 koa-static
2 npm install koa-static
3 // 在入口文件 app.js中进行挂载使用
4 const staticResource = require('koa-static');
5 app.use(staticResource(__dirname + '/public'));

通过:http/https://域名+端口号+/public/+文件名,即可访问上传的静态文件

最新文章

  1. 优化MySchool数据库(事务、视图、索引)
  2. 网页样式——各种炫酷效果持续更新ing...
  3. .net环境下ckeditor与ckfinder中文文件链接乱码的问题
  4. oracle增删改查
  5. How to: Read Object Data from an XML File
  6. Jetty实践-Hello World
  7. 删除mysql服务
  8. Jdbc 事务
  9. “易信”今日正式更新至V1.1版
  10. poj3974(manacher)
  11. shell脚本编程常识
  12. android学习ProgressBar的简单使用
  13. event模拟数据库链接
  14. 2019-中小型公司PHP面试题目记录(附带答案)
  15. VS2017 ASP.NET MVC 5.0 开部署问题汇总
  16. 新的blog站地址
  17. php xml格式对象 返回->对应格式数组
  18. Android上的单元测试
  19. Spring AOP 简单入门笔记 (转)
  20. [Objective-C语言教程]数据封装(27)

热门文章

  1. AFL源码分析(一)
  2. DRF认证流程及源码分析
  3. 【Java EE】Day03 DQL、约束、数据库设计、范式、备份和还原
  4. VSCODE 中.art文件识别为html文件
  5. 利用云服务提供商的免费证书,在服务器上发布https前端应用和WebAPI的应用
  6. JavaScript:对象:对象和属性的内存结构是什么样的?
  7. 基于 Traefik 的 ForwardAuth 配置
  8. Triple 协议支持 Java 异常回传的设计与实现
  9. Lombok中@Builder和@SuperBuilder注解的用法
  10. 激光炸弹【算法竞赛进阶指南, HNOI2003】