【问题标题】:Node Js Joi validation is not working for meNode Js Joi 验证对我不起作用
【发布时间】:2021-01-21 10:39:31
【问题描述】:

我正在使用 Joi 验证从 excel 文件接收的数据,即使我没有在架构中定义任何内容,它也会给出附加错误:不允许使用“名称”

enter image description here

这是我的代码:

const schemaJoi = {};
    
const validation = Joi.object(schemaJoi).validate(candidates);
console.log(validation.error.details[0].message);

当数据完美时,它仍然不允许传递该数据。

请帮忙。

【问题讨论】:

  • 在 joi 中你应该把应该被验证的东西传递给最终的对象,如果你传递一个空的对象,没有什么是有效的
  • 感谢您的回复塞巴斯蒂安,例如,我放了一个空架构对象,当我放一个空架构对象时,它仍然显示有效负载中的错误并且这些是有效的,我的问题很简单为什么当架构为空时,它仍然显示错误。

标签: node.js validation joi


【解决方案1】:

如果您希望 joi 跳过对未知属性的验证,请将以下内容添加到您的验证调用中:

options={allowUnknown:true}

例如:

const joi = require('joi');

const schema = {};

const validation = joi.object(schema).validate(
  payload={a:1, b:2},
  options={allowUnknown:true}
);

if (validation.error) {
  console.log(validation.error.details[0].message);
}

【讨论】:

    猜你喜欢
    • 2020-07-15
    • 1970-01-01
    • 1970-01-01
    • 2019-03-05
    • 2021-06-04
    • 1970-01-01
    • 2015-10-07
    • 1970-01-01
    • 2020-07-16
    相关资源
    最近更新 更多