首先,我为我糟糕的英语表示歉意。
我有一个接受 PUT 请求的方法,它接收一个文件和 BlogModel。当我从前端提交表单并且 BlogModel 的验证失败时,文件仍然会上传。
主要.ts
import { NestFactory } from '@nestjs/core';
import { AppModule } from './core/app.module';
import { ValidationPipe } from '@nestjs/common';
import { join } from 'path';
import { NestExpressApplication } from '@nestjs/platform-express';
async function bootstrap() {
const app = await NestFactory.create<NestExpressApplication>(AppModule);
app.useStaticAssets(join(__dirname, '..', 'src/public'));
app.setBaseViewsDir(join(__dirname, '..', 'src/views'));
app.setViewEngine('hbs');
app.useGlobalPipes(new ValidationPipe());
await app.listen(3000);
}
bootstrap();
Run Code Online (Sandbox Code Playgroud)
添加博客方法
@Put()
@UseInterceptors(FileInterceptor('thumbnail', { storage: BlogStorage }))
addBlog(@UploadedFile() file, @Body() addBlogModel: AddBlogModel) {
console.log(file);
}
Run Code Online (Sandbox Code Playgroud)
添加博客.model.ts
import { IsArray, IsBoolean, …Run Code Online (Sandbox Code Playgroud)