Я ищу способ предотвращения нежелательных свойств, присутствующих в блоке запроса, как описано в соответствующей модели
Вот моя модель:
import { Model, model, property } from '@loopback/repository';
@model({
name: 'AwsS3',
strict: true,
description: 'AWS S3 Object description',
properties: {
Key: {
type: 'String',
required: 'true',
},
Bucket: {
type: 'String',
requied: 'true',
},
},
})
export class AwsS3 extends Model {
@property({
type: 'string',
description: 'path/to/file',
required: true,
}) Key: string;
@property({
type: 'string',
description: 'AWS-S3-Bucket-Name',
required: true,
})
Bucket: string;
constructor(data: AwsS3) {
super(data);
}
}
Я использовал это в контроллере
function(@requestBody({
required: true,
description: 'aws object settings',
content: {
'application/json': {},
},
}) body : AwsS3
){
console.log(body);
}
Выдает корректно, когда одно из обоих свойств отсутствует или имеет неправильный тип.
Но если я отправляю json как ниже, ничего не выбрасывается и объект обрабатывается с помощью UnwantedProp
{
Key: 'key',
Bucket : 'bucket',
UnwantedProp: 40
}