1. 在对应模块的dto.ts文件中新增一下字段
import { ApiBody, ApiParam, ApiProperty, } from "@nestjs/swagger";
import { BaseDTO } from 'src/common/common/dto/base.dto';
import { IsString } from "class-validator";
export class CreateFileManageDto extends BaseDTO {
@ApiProperty({ description: '文件名称', example: '测试文件名称' })
@IsString()
name: string
@ApiProperty({ description: '文件大小', example: '13KB' })
@IsString()
size: string
// 这里
@ApiProperty({ type: 'string', format: 'binary' })
file: any
}
2. 在对对应的接口引入apiConsumes
装饰器
@Post('upload')
@ApiOperation({ summary: '上传文件' })
@UseInterceptors(FileInterceptor('file'))
@ApiConsumes('multipart/form-data')
upload(@UploadedFile() file, @Body() fileInfo: CreateFileManageDto) {
console.log(file);
console.log(fileInfo);
return this.fileManageService.create(fileInfo);
}