简体   繁体   English

joi 的 hapi 验证并发送所有错误

[英]hapi validation for joi and send all error

I am using joi for validating request like我正在使用 joi 来验证请求,例如

lastName: Joi.string().trim().min(3).optional().error(new Error('Please enter valid name')), lastName: Joi.string().trim().min(3).optional().error(new Error('请输入有效名称')),

email: Joi.string().email().required().lowercase().error(new Error('Please enter valid Email ID')),电子邮件:Joi.string().email().required().lowercase().error(new Error('请输入有效的电子邮件ID')),

it is working fine and i am also able to send error using failAction but if both validation fails it only send the first failed它工作正常,我也可以使用 failAction 发送错误,但如果两个验证都失败,它只发送第一个失败

like if you enter lastName as h , and email as S@@com so it send only first error ie "Please enter valid name" but I want response containing both error就像你输入 lastName 作为 h ,并作为 S@@com 发送电子邮件,所以它只发送第一个错误,即“请输入有效名称”,但我想要包含两个错误的响应

I also try to use failAction but after failing fist validator it ignore all other validator any suggestion how can i get the required result我也尝试使用failAction但是在第一次验证器失败后它忽略所有其他验证器任何建议我如何获得所需的结果

set abortEarly: false in server setting by default it is true set abortEarly: false在服务器设置中默认为 true

server.connection({
    routes: {
        validate: {
            options: {
                abortEarly: false
            }
        }
    }
});

Check here 在这里查看

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM