我正在尝试对我的项目的 API 请求实施验证,如下所示: https://docs.nestjs.com/techniques/validation
它似乎有效,因为当我省略字段时,我会收到适当的错误消息。只是当我不把它们排除在外时它也会抱怨。以下是我的端点代码:
@Post('heatMap')
async getOrCreateHeatMap(@Body() heatMap: HeatMapGetOrCreate) {
const getHeatMap = await this.graphService.getHeatMapByFields(heatMap);
if (getHeatMap) {
return getHeatMap;
} else {
// return this.graphService.createHeatMap(name, complexity, repositoryId);
}
}
这是我正在使用的DTO类:
export class HeatMapGetOrCreate {
@IsNotEmpty()
name!: string;
@IsNotEmpty()
complexity!: number;
@IsNotEmpty()
repositoryId!: string;
}
我认为这可能不是验证的问题,而是我如何做
@Body
部分的问题。我想要做的事情是可能的还是我需要单独定义每个字段?
愚蠢的错误。我使用邮递员并将请求作为表单数据而不是 json 发布。