首页 > 解决方案 > ValidationPipe 在使用 app.useGlobalPipes 时不起作用

问题描述

你好。我想将 ValidationPipe 与 useGlobalPipes 一起使用。我用 :

import 'dotenv/config';
import {NestFactory} from '@nestjs/core';
import {ValidationPipe} from '@nestjs/common';
import {AppModule} from './app.module';


async function bootstrap() {
    const app = await NestFactory.create(AppModule);
    app.useGlobalPipes(new ValidationPipe({
        transform: true,
        whitelist: true,
    }));
    await app.listen(3000);
}

bootstrap();

但这不起作用。仅当我在控制器中添加 VALidationPipe 时才工作:

@Post('register')
@UsePipes(new ValidationPipe({ transform: true, whitelist: true}))
async register(@Body() userDTO: RegisterDTO) {
    const user = await this.userService.create(userDTO);
    const payload: Payload = {
        userName: user.userName,
        seller: user.seller,
    };

    const token = await this.authService.signPayload(payload);
    return {user, token};
}

标签: node.jsangulartypescriptnestjs

解决方案


推荐阅读