Я не уверен, правильно ли я читаю документы по jsonschema, однако, насколько я могу судить, этот пакет должен позволить мне проверить соответствие объекта JSON указанной схеме с помощью jsonschema.validate ().Следующий код не говорит мне, что "age"
должно быть числом.
import json
import jsonschema
schema = '{"name":{"type":"string","required":true},"age":{"type":"number","required":true}}'
schema = json.loads(schema)
data = '{"name":"Foo","age":"Bar"}'
def json_validator(data):
try:
json.loads(data)
print("Valid Json")
return True
except ValueError as error:
print("Invalid JSON: %s" % error)
return False
def schema_validator(data, schema):
try:
jsonschema.validate(data, schema)
except jsonschema.exceptions.ValidationError as e:
print(e)
except jsonschema.exceptions.SchemaError as e:
print(e)
json_validator(data)
schema_validator(data, schema)
Я что-то упустил или это должно работать?
Любая помощь будет высоко ценится, спасибо.