我正在研究 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);
}
当我测试它时。我遇到这样的错误
真的感谢您的每一个帮助。
FileTypeValidator 不是“单一”验证器,而是“完全匹配”验证器。您需要创建自己的文件类型验证器才能检查文件类型是否是提供的文件类型之一。