下面的数据模式中有一个错误,并且测试中存在一个验证失败的对象。我可以抛出错误,但没有错误消息。
EventSourceException: No Free Buffers available from the operating system (e.g. event rate too fast)
消息仍然没有错误消息。
var tv4 = require('tv4')
var schema = {
"items": {
"type": "boolean"
}
}
tv4.setErrorReporter(function (error, data, schema) {
return "Custom error message"
})
var data1 = [true, false]
var data2 = [true, 123]
console.log(tv4.validate(data1, schema))
if (tv4.error) throw tv4.error
console.log(tv4.validate(data2, schema))
if (tv4.error) throw tv4.error
如何使用消息抛出无效架构?
答案 0 :(得分:0)
谢谢你这几乎保存了我的一半lyf :),谢谢大家 而对于其他人总是使用这3行进行模式测试:
console.log(" Schema Valid " +JSON.stringify(tv4.validate(jsonData ,schema)));
console.log("Validation errors: "+ tv4.error);
console.log(tv4.error.dataPath);
并输出如下:
<强> LOGGS 强>
false
Validation errors: ValidationError: Invalid type: string (expected integer)
/guardVerificationUrl
此外,如果您想知道使用什么类型的错误:
console.log(tv4.error.schemaPath);
输出:
/properties/guardVerificationUrl/type