jay*_*y_t 10 python validation json jsonschema
我正在以json文档的形式处理数据输入.这些文档需要具有某种格式,如果它们不符合要求,则应忽略它们.我目前正在使用凌乱的'if thens'列表来检查json文档的格式.
我一直在尝试使用不同的python json-schema库,这可以正常工作,但我仍然可以使用模式中未描述的密钥提交文档,这对我来说没用.
虽然我期望它,但此示例不会生成异常:
#!/usr/bin/python
from jsonschema import Validator
checker = Validator()
schema = {
"type" : "object",
"properties" : {
"source" : {
"type" : "object",
"properties" : {
"name" : {"type" : "string" }
}
}
}
}
data ={
"source":{
"name":"blah",
"bad_key":"This data is not allowed according to the schema."
}
}
checker.validate(data,schema)
Run Code Online (Sandbox Code Playgroud)
我的问题是双重的:
谢谢,
松鸦
添加"additionalProperties": False:
#!/usr/bin/python
from jsonschema import Validator
checker = Validator()
schema = {
"type" : "object",
"properties" : {
"source" : {
"type" : "object",
"properties" : {
"name" : {"type" : "string" }
},
"additionalProperties": False, # add this
}
}
}
data ={
"source":{
"name":"blah",
"bad_key":"This data is not allowed according to the schema."
}
}
checker.validate(data,schema)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1145 次 |
| 最近记录: |