美文网首页
koa文件上传

koa文件上传

作者: Jonath | 来源:发表于2019-10-09 17:10 被阅读0次

demo地址


使用 koa-body 中间件获取上传的文件

koa-body 支持文件、json、form格式的请求体,安装 koa-body

yarn add koa-body

设置 koaBody 配置参数,index.js

const Koa = require("koa")
const koaBody = require("koa-body")
const route = require("./router")
const static = require("./static")
const path = require("path")

const app = new Koa()
app.use(
  koaBody({
    // 支持文件格式
    multipart: true,
    formidable: {
      // 上传目录
      uploadDir: path.join(__dirname, "static/uploads"),
      // 保留文件扩展名
      keepExtensions: true,
      // 修改文件名
      onFileBegin: (_, file) => {
        file.path = file.path.replace(path.basename(file.path), file.name)
      }
    }
  })
)
app.use(static)
app.use(route.routes(), route.allowedMethods())
app.listen(64723)

接下来完善 /upload 路由,获取文件,然后直接返回文件路径

const path = require("path")
const fs = require("fs")
const route = require("koa-router")()

route.post("/", ctx => {
  // 上传的文件
  const files = ctx.request.files
  const body = {}
  Object.keys(files).forEach(key => {
    // 上传的文件
    const file = files[key]
    // 查看文件路径
    body[key] = ctx.origin + "/uploads/" + path.basename(file.path)
  })
  ctx.body = body
})

module.exports = route

使用 Postman 测试

上传测试
本地磁盘上传的文件

如果想要查看上传的文件可以借助koa-static, 在此demo我自己实现了文件的获取

相关文章

  • koa 使用记录

    koa-body: 实现文件上传(form action=“...url” 提交表单式上传) koa-parser...

  • 关于 koa-formidable 一些问题

    这两天在研究node + koa + koa-formiable 上传图片和文件 最简单的使用方法 文件已经上传...

  • koa 上传文件

    上传文件 遇到的问题: 最开始用koa-multer,接口没问题回调执行了,但是文件没有传上去。折腾了两天,发现注...

  • koa文件上传

    demo地址 使用 koa-body 中间件获取上传的文件 koa-body 支持文件、json、form格式的请...

  • 文件上传

    node 上传文件 可以使用koa-body 中间件进行上传.但是一定要注意koa-body版本的问题.和异步问题...

  • koa实现文件上传

    文件上传是一个经常要用到的功能,这里对基于koa实现文件上传做一个总结。PS:在我的另外一篇博客讲到了图片上传的前...

  • koa-body 获取不到文件的原因

    问题描述:在koa项目中,使用koa-body中间件来实现文件的上传功能,但是通过ctx.request.body...

  • 100-days-Coding - day8

    day8-0808 form表单同时上传文件和数据 Koa作为sever 未完待续......

  • 11KOA 文件上传

    文件上传 安装上传中间件 使用中间件完成上传功能

  • html5拖放上传文件

    记录一个html5文件上传和接收的示例 前端 nodejs koa后端demo

网友评论

      本文标题:koa文件上传

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