#13158·nest

`UploadFile()` 应该接受 `Readable` 而不是 `Buffer`

作者: samchon创建于 2024年2月2日更新于 2026年7月28日
标签type: enhancement :wolf:

□ 是否有一个已经提出这个问题的问题?

  • 我搜索了现有的问题

您的特性请求与问题有关吗 ? 请描述一下

在使用 NestJS 引导文档后“ UploadFile( ) ” 装饰器时, 它变成了“ Buffer” 类型 。

如你所知,`Buffer'类型意味着后端服务器收集上传文件的全部数据。 如果客户端通过API上传了1GB文件,雀巢JS后端服务器至少需要1GB内存关于请求. 如果同时有100个客户端上传了1GB文件,雀巢JS后端服务器此时需要100GB内存.

描述你想要的解决方案

我知道 " multer " 的默认选项是使用 " Buffer " 类型的实例,但像NestJS这样的整个框架似乎不合适。 如果配置 " multer " 的存储引擎,上传的文件将是 " 可读 " 流类型,我认为NestJS应该这样做。

教育、文件、收养、移徙战略

我遵循了https://docs.nestjs.com/techniques/file-upload文件。

并且对太多的记忆消耗感到非常惊讶.

改变行为的动机/用例是什么?

我认为NestJS应该如下:

  1. 使流出成为默认
  2. 当一些用户想要 " 购买 " 功能时,他们必须自己配置
  3. 如果难以迁移,则必须在指导文件中警告这些事实