我遇到了与 Joi 验证相关的问题,每当我向 Joi 发送请求时,它只会抛出单个错误。 var CreateValidationSchema = Joi.object().keys({ name: Joi.string().required().max(255).label("N...
管理员将创建用户时,会输入一些随机字符串作为密码。当管理员编辑现有用户时,除非他想更改密码,否则不需要输入任何密码。如果管理员没有输入任何密码,则将使用旧密码。 因此,我尝试使用.when()来处理这种情况。当负载中存在_id时(仅当用户存在时可能会出现),那么我们应该使密码字段变为可选,否...
我正在使用Joi验证器来进行HTTP请求。这里有一个名为type的参数。我需要确保该参数的可能值为"ios"或"android"。 我该如何做到呢?body : { device_key : joi.string().required(), type : joi.string().r...
我在我的项目中使用了 "joi": "10.0.6" 和 "express-validation": "1.0.1" 来验证一个 JSON 对象,这个对象将被保存到数据库中。 其中一个字段是字符串,但它可能是 null 或空的。我该如何让我的字符串在这些情况下通过验证? 我已经尝试过以下情...
将Joi升级到最新版本@hapi/Joi(17.1.1)后,我的服务器无法启动,在启动时出现以下错误。最近的版本中似乎有一些破坏性变化。目前还没有找到任何线索,感谢任何帮助。 Error: Schema can only contain plain objects (name) at...
我正在尝试根据另一个字段的一组值验证对象中的字段。假设我的对象有两个字段,field1和field2。字段一可以取值A、B、C、D、E、F、H、I。现在假设如果field1是以下任何一个值,A、B、C、H,则field2应该为null。如何实现呢?我认为应该具有下面的语法,但我不知道如何完全实...
我有一个对象数组需要验证特定的模式,如果其中任何一个对象与给定的模式匹配,我想针对它进行验证并忽略其他模式并移动到下一个数组项。 我尝试了Joi.alternatives,但它将检查所有模式,而不仅仅是检查是否匹配了一个。 我的验证器: Joi.array().min(1).max(49...
假设我有以下模式:var schema = { fieldOne: Joi.string().required(), fieldTwo: Joi.string().required() }; 是否可能设置一个验证规则,检查两个字段是否具有不同的值?