如何解决验证python中json模式中的未知属性名称
schema = { "type" : "object","properties" :
{ "price" : {"type" : "array","items" : { "type" : "string","pattern": "^[A-Za-z0-9_]*$" }},},}
from jsonschema import validate
validate(instance={"price" : ["test","34"]},schema=schema)
以上代码验证了属性 price 包含不带间隔的字符串数组项。 即使我们不知道传入的属性名称,也可以验证该属性吗?
可能如下所示
schema = { "type" : "object","properties" :
{ "type" : "array","pattern": "^[A-Za-z0-9_]*$" },schema=schema)
validate(instance={"marks" : ["test",schema=schema)
解决方法
是的,您可以使用additionalProperties
提供一个通用模式,无论属性名称是什么,所有对象都必须通过该模式。
您还可以使用模式来约束属性名称-请参见https://json-schema.org/understanding-json-schema/reference/object.html上的“ patternProperties”。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。