Как я могу проверить полезную нагрузку вложенного тела POST с помощью промежуточного программного обеспечения checkSchema в express -validator? - PullRequest
3 голосов
/ 13 января 2020

С учетом следующего образца тела POST:

User = {
    email: string; //required, email
    password: string; //required, min length 8

    profile: {
        firstName: string;  //required
        lastName: string;   //required
        gender: Gender;     //required, enum (M/F)
    }
}

Как определить express ValidationSchema для проверки вложенного объекта Profile и его подпорок внутри User

userValidatorSchema: ValidationSchema = {
    email: {
        isEmail: {}
    },
    password: {
        exists: {
            options: {checkNull: true},
            errorMessage: 'Null value'
        },
        isEmpty: {
            negated: true,
            errorMessage: 'Empty string'
        }        
    }
    //Profile validation??

Express -validator docs сделать так, что это невозможно с express -validator. Если это так, что является более универсальным валидатором для express?

1 Ответ

1 голос
/ 13 января 2020

Вы пробовали этот подход:

// Profile validation
profile: {
  optional: false
},
'profile.firstName': {
  notEmpty: true,
  optional: false
}
// ...others
...