web-dev-qa-db-fra.com

Comment utiliser les valeurs d'énumération avec la validation de chaîne Joi

J'utilise le validateur Joi pour mes requêtes HTTP. Là, j'ai un paramètre appelé type. Je dois m'assurer que les valeurs possibles pour le paramètre sont "ios" ou "Android".

Comment puis je faire ça?

body : {
  device_key : joi.string().required(),
  type : joi.string().required()
}
10

Vous pouvez utiliser valid.

const schema = Joi.object().keys({
  type: Joi.string().valid('ios', 'Android'),
});

const myObj = { type: 'none' };
const result = Joi.validate(myObj, schema);
console.log(result);

Cela donne une erreur ValidationError: child "type" fails because ["type" must be one of [ios, Android]]

19
AbhinavD