繁体   English   中英

在 JsonSchema 验证错误中包含键值

[英]Include Key value in JsonSchema Validation Errors

我有一个 json 文件并创建了一个 jsonSchema。 现在我做了验证。 它工作正常。 在错误消息中,它显示如下错误:

['id', 4180, 'name', 'amount']
2.0 is greater than the maximum of 1

我想打印发生错误的 ID 号,以便可以轻松跟踪 JSON 文件中的错误。

我尝试了以下代码:

jsondata = json.loads(jsonInput.read())

jsonschema = json.loads(schemaInput.read())

validator = jsonschema.Draft7Validator(jsonschema )

errors = sorted(validator.iter_errors(jsondata ),key=str)  # get all validation errors

error_count=1;   
for error in errors:
    print(error)

我怎样才能做到这一点?

您需要进一步检查您遇到的错误。

这是文档中的一个示例:

for error in errors:
    for suberror in sorted(error.context, key=lambda e: e.schema_path):
        print(list(suberror.schema_path), suberror.message, sep=", ")

暂无
暂无

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

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