即使文件类型正确,文件验证器也总是返回错误 - NestJS

问题描述 投票:0回答:1

我正在研究 NestJS。我想通过API上传图像文件。我在 API 中添加了验证器,但它不起作用。这是我的代码,

@Post('upload')
@UseInterceptors(
    FilesInterceptor('files', 3, {
      storage: diskStorage({
        destination: './uploads/',
      }),
    }),
  )
uploadFile(
    @UploadedFiles(
        new ParseFilePipeBuilder()
        .addFileTypeValidator({
            fileType: 'jpg'
        })
        .addFileTypeValidator({
            fileType: 'png'
        })
        .addFileTypeValidator({
            fileType: 'jpeg'
        })
        .addMaxSizeValidator({
          maxSize: 10000
        })
        .build({
            errorHttpStatusCode: HttpStatus.UNPROCESSABLE_ENTITY
        })
    ) files: Array<Express.Multer.File>
) {
  console.log(files);
}

当我测试它时。我遇到这样的错误

真的感谢您的每一个帮助。

node.js nestjs multer nest
1个回答
0
投票

FileTypeValidator 不是“单一”验证器,而是“完全匹配”验证器。您需要创建自己的文件类型验证器才能检查文件类型是否是提供的文件类型之一。

© www.soinside.com 2019 - 2024. All rights reserved.