【问题标题】:JS Joi Validation fails on string lengthJS Joi 验证在字符串长度上失败
【发布时间】:2020-07-07 09:07:01
【问题描述】:
在花了将近 2 天的时间调查验证不起作用的原因之后,我明白了一点。基本上我发现如果我的字符串超过 40 个字符,验证将失败。如果它有 40 或以下,它将起作用。
所以现在我使用validator.joi.string(),但我也尝试使用validator.joi.string().min(0).max(500) 解决此问题,但它似乎不起作用。
有什么解决办法吗?
【问题讨论】:
标签:
javascript
validation
joi
【解决方案1】:
只是在测试。抱歉格式错误。
但它确实工作正常。
const Joi = require('@hapi/joi');
const schema = Joi.object({
username: Joi.string()
.min(3)
.max(100)
.required(),
})
schema.validate({ username: 'abc' });
// -> { value: { username: 'abc' } }
schema.validate({});
// -> { value: {}, error: '"username" is required' }
// Also -
async function run(){
const value = await schema.validateAsync({ username: 'abcedeedsdsd sfdfghgdf sgfdghsfdsfdjgsfdgs shgdfshgdbshgdf sdhghsjfgfkhgj' });
console.log(value)
}
run();