Я обнаружил, что сегодня JSON Schema выглядит на 100% подходящим моим потребностям, но на самом деле это заставляет меня гайки с одним из самых основных случаев. Прежде чем создавать этот пост, я, очевидно, изо всех сил старался следовать существующей документации и смотрел в Интернете, пытаясь найти что-то, что помогло.JSON Схема: требуемые свойства игнорируются
Stack: PHP7 - justinrainbow/JSON-схема 2.0.5
Вот схема:
{
"description":"UserCreate",
"type":"object",
"properties":{
"login":{
"type":"string",
"required":true
},
"idAsc":{
"type":"string",
"required":true
}
},
"required":[
"login",
"idAsc"
]
}
Как вы можете видеть, я использую как требуемое определение (логическое и массив), просто убедитесь, что я использую хороший, я также попробовал только массив и логическое значение с тем же результатом.
Вот данные
{
"login":"[email protected]"
}
Я ожидаю следующий код, чтобы обнаружить отсутствие требуемого параметра idAsc.
$validator = new JsonSchema\Validator;
$validator->check($data, $schema);
if ($validator->isValid() == false)
echo("Missing something");
else
echo("Good");
Но этот код держать печать «Хорошо» ... Я определенно не хватает кое-что о JSON Schema.
Спасибо за вашу помощь, наилучшими пожеланиями.
http://json-schema.org/implementations.html списки 5 различными JSON Schema валидаторов для PHP. Какой из них вы используете? – Barmar
@Barmar Вы можете найти его в разделе «Стек»: На самом деле работаем с justinrainbow/json-schema -> https://github.com/justinrainbow/json-schema –