美文网首页
Koa2上传文件流

Koa2上传文件流

作者: 美食家儿菜 | 来源:发表于2019-04-08 21:00 被阅读0次

点击查看官方示例

后台写法:
const uploadData= async function (ctx) {
  console.log('book controller')
  if ('POST' !== ctx.method) return await next();

  const file = ctx.request.files.file;
  const reader = fs.createReadStream(file.path);
  const stream = fs.createWriteStream(path.join(os.tmpdir(), Math.random().toString()));
  reader.pipe(stream);
  console.log('uploading %s -> %s', file.name, stream.path);
  const data = ctx.request.body;
  data.book_path = stream.path;
  console.log('path',stream.path);
  console.log('data', data);
  const success = await EBookModel.createBook(data)
  ctx.redirect('/');
  ctx.body = {
    success
  }
}

关键点:通过ctx 读取到前端的上传文件:

const file = ctx.request.files.file;
前端:需要按照正确的数据格式传到后端,后端才能够进行解析;

通常 可以在Network中看到这样的上传数据示例


上传数据.png

对于一个formData中含有多个文件的情况:

相关文章

  • Koa2上传文件流

    点击查看官方示例 后台写法: 关键点:通过ctx 读取到前端的上传文件: 前端:需要按照正确的数据格式传到后端,后...

  • 文件上传(文件流)

    上传接口: web.xml配置 url

  • Vue 大文件上传和断点续传

    文件上传的 2 套方案 基于文件流(form-data) element-ui 框架的上传组件,就是默认基于文件流...

  • 上传文件流

    2022-11-01 周二 举个栗子,如果要上传二进制文件流,比如excel文件。 需要先修改请求头 传参的时候需...

  • 文件上传与Koa2

    前言 本文仅为koa2上传文件(图片/文本/视频/音频)到七牛云的记叙。 关于我是如何找到该文档的? 在没有具体...

  • Go Gin 实现文件的上传下载流读取

    Go Gin 实现文件的上传下载流读取 文件上传 routerrouter.POST("/resources/co...

  • Go Gin 实现文件的上传下载

    Go Gin 实现文件的上传下载流读取 文件上传 routerrouter.POST("/resources/co...

  • java.net.ProtocolException: expe

    okhttp上传文件报错,上传文件大小跟接受文件大小不一致。 关闭文件读写流。 文件名称过长!改短就行。 附上传文...

  • 常用图片文件下载上传方法

    上传文件 以图片为例,文件上传可以省略预览图片功能 图片上传可以使用2种方式:文件流和base64; 1.文件流上...

  • NodeJs koa2实现文件上传

    知识讲解 koa2框架是一个基于中间件的框架,也就是说,需要使用到的功能,比如路由(koa-router),日志(...

网友评论

      本文标题:Koa2上传文件流

      本文链接:https://www.haomeiwen.com/subject/bgfmiqtx.html