NestJSとclass-validatorでPOST時に検証をする

class-validatorをインストールした 前回はclass-validatorをインストールしDTOと接続した。 が、結果は前回の記事に書いた通りだった。 なので、バリデートを効くようにしたい。 main.tsにバリデートを読み込む import { ValidationPipe } from '@nestjs/common'; import { NestFactory } from '@nestjs/core'; import { AppModule } from './app.module'; async function bootstrap() { const app = await NestFactory.create(AppModule); app.useGlobalPipes(new ValidationPipe()); await app.listen(3000); } bootstrap(); つまりバリデートするという指示が漏れていた。 ただこれだとclass-transformerが足りないと怒られる。 class-transformerをインストールする npm i --save class-transformer これで怒られなくなった。 間違った情報をPOSTする $ curl -d '{"firstName":1111, "lastName":"yamada", "isActive":"string"}' -H "Content-Type: application/json" -X POST http://localhost:3000/sample {"statusCode":400,"message":["firstName must be a string"," isActive must be a boolean value"],"error":"Bad Request"} よし、怒られたのでオッケー。

投稿日 · 2023-03-26 · 更新日 · 2024-06-07 · 1 分 · nove-b