如何使用 koa-body 中间件处理文件上传?

· 约 3 分钟读完 · 第 55 / 117 章

推荐答案

本题详细解读

1. 安装 koa-body 中间件

首先,你需要安装 koa-body 中间件,它可以帮助你处理文件上传。

2. 配置 koa-body 中间件

在 Koa 应用中,使用 koa-body 中间件来处理文件上传。你需要设置 multipart: true 来启用文件上传功能,并通过 formidable 配置项来设置文件上传的相关参数。

  • uploadDir: 指定文件上传的目录。
  • keepExtensions: 是否保留文件的扩展名。
  • maxFileSize: 设置上传文件的最大大小。

3. 处理文件上传请求

在路由处理函数中,你可以通过 ctx.request.files 来获取上传的文件。ctx.request.files.file 表示上传的文件对象,其中 file.path 是文件的临时路径,file.name 是文件的原始名称。

4. 保存上传的文件

使用 fs.createReadStream 读取临时文件,并通过 fs.createWriteStream 将文件写入到指定的目录中。通过 reader.pipe(stream) 将文件流从临时路径写入到目标路径。

5. 返回响应

文件上传成功后,返回一个成功的响应给客户端。

6. 启动服务器

最后,启动 Koa 服务器,监听指定的端口。

通过以上步骤,你可以使用 koa-body 中间件轻松处理文件上传。