我想驗證我的 json 輸入 -- my_json。我預計會出現例外(因為 job1 不是 job。
如何驗證這個json?
import json
from jsonschema import validate
# Describe what kind of json you expect.
schema = {
"job" : {"type" : "string"},
"big_list": [
{
"id": 1,
"code": "qqq"
},
{
"id": 2,
"code": ""
}
# many items
]
}
# Convert json to python object.
my_json = {'job1': "as", 'big_list': [{'id': 1, 'code': 'qqq'}, {'id': 2, 'code': ''}]}
validate(instance=my_json, schema=schema) # I expected exception, but have no exceptions
uj5u.com熱心網友回復:
您正確進行了測驗,但架構錯誤。架構應該是這樣的。您可以在此處查看 json 架構檔案
import json
from jsonschema import validate
# Describe what kind of json you expect.
schema = {
"type" : "object",
"properties" :
{
"job" : {"type" : "string"},
"big_list" : {"type" : "object"},
}
}
# Convert json to python object.
my_json = {'job1': "as", 'big_list': [{'id': 1, 'code': 'qqq'}, {'id': 2, 'code': ''}]}
valid_json = {'job1': "as", 'big_list': {'id': 1, 'code': 'qqq'}}
validate(instance=valid_json, schema=schema) #
print('valid json has passed')
validate(instance=my_json, schema=schema) # this should raise an error
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/388487.html
標籤:Python json jsonschema
