使用JSONSchema Validator进行JSON对象验证


const Validator = require('jsonschema').Validator;
const validator = new Validator();
const obj = 
[
{ 
"id":"1",
"firstname":"Jack"    
}
];
const instance= {    
properties: {
id: {
type: 'number'
},
firstname: {
type: 'string'
}
},
required: ['id', 'firstname'],
additionalProperties: false
};    
const  result = validator.validate(obj, instance);   
console.log(result.errors);

我想使用jsonschemaValidator来验证JSON对象。当json对象不符合模式时,validate函数也不会返回任何错误。无论obj是否符合模式/实例,其错误部分总是返回null。

您已经将obj定义为数组,而不是对象。因此,验证通过了,因为您使用了只适用于对象的JSONSchema关键字。(许多JSON模式关键字仅适用于特定类型。(

在您的模式中,添加"type": "object",当实例不是对象时,您应该会看到一个错误。

在旁注上;实例";是要验证的数据;模式";是要用于验证的JSON模式。

相关内容

  • 没有找到相关文章

最新更新