Я имею дело с вводом данных в виде документов JSON.Эти документы должны иметь определенный формат, если они не соответствуют требованиям, их следует игнорировать.В настоящее время я использую грязный список 'if thens', чтобы проверить формат документа json.
Я немного экспериментировал с различными библиотеками json-схемы python, который работает нормально, но явсе еще в состоянии отправить документ с ключами, не описанными в схеме, что делает его бесполезным для меня.
Этот пример не генерирует исключение, хотя я ожидаю:
#!/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)
У меня двоякий вопрос:
- Пропускаю ли я что-то в определении схемы?
- Если нет, есть ли другой легкий способ подойти к этому?
Спасибо,
Джей