dmitriy-nz / nestjs-form-data

NestJS middleware for handling multipart/form-data, which is primarily used for uploading files.
https://www.npmjs.com/package/nestjs-form-data
MIT License
117 stars 23 forks source link

@IsFiles() decorator with custom message causes 400 bad request #49

Closed karolmodzelewski closed 2 months ago

karolmodzelewski commented 1 year ago

Hi,

When I'm trying to send a request (POST) with multiple files and I set a custom error message to @IsFiles() decorator, it will cause a 400 bad request error. Request are send here using Postman

My code (DTO):

    @IsFiles({ message: 'IsFiles custom error message' })
    @MaxFileSize(1024 * 1024 * 5, { each: true, message: 'MaxFileSize custom error message' })
    @HasMimeType(['image/jpeg', 'image/png', 'image/webp'], { each: true, message: 'HasMimeType custom error message' })
    @IsNotEmpty({ message: 'IsNotEmpty custom error message' })
    public photos: FileSystemStoredFile[];

1

And when I delete an object with message parameter:

    @IsFiles() // <-- here
    @MaxFileSize(1024 * 1024 * 5, { each: true, message: 'MaxFileSize custom error message' })
    @HasMimeType(['image/jpeg', 'image/png', 'image/webp'], { each: true, message: 'HasMimeType custom error message' })
    @IsNotEmpty({ message: 'IsNotEmpty custom error message' })
    public photos: FileSystemStoredFile[];

It works perfectly

2

It also works when I use @IsFile() decorator with each property like this:

@IsFile({ each: true, message: 'IsFile custom error message' })

========

NestJS: 9 nestjs-form-data: 1.8.7

dmitriy-nz commented 11 months ago

@karolmodzelewski Hi, in version 1.9.1 I have added tests to check your ticket. And they pass successfully, could you please test the new version in your environment and report the results?