今日、私のニーズに 100% 適合しているように見える JSON Schema を発見しましたが、実際には、最も基本的なケースの 1 つに頭がおかしくなりました。この投稿を作成する前に、私は明らかに既存のドキュメントに従うために最善を尽くし、何か役立つものを見つけようとしてインターネットを調べました.
スタック: PHP7 - justinrainbow/json-schema 2.0.5
スキーマは次のとおりです。
{
"description":"UserCreate",
"type":"object",
"properties":{
"login":{
"type":"string",
"required":true
},
"idAsc":{
"type":"string",
"required":true
}
},
"required":[
"login",
"idAsc"
]
}
ご覧のとおり、必要な定義 (ブール値と配列) の両方を使用していますが、適切なものを使用していることを確認するために、配列またはブール値のみを使用して同じ結果を得ました。
ここにデータがあります
{
"login":"email@email.com"
}
次のコードが、必要な idAsc パラメーターの欠如を検出することを期待しています。
$validator = new JsonSchema\Validator;
$validator->check($data, $schema);
if ($validator->isValid() == false)
echo("Missing something");
else
echo("Good");
しかし、このコードは「良い」と出力し続けます... JSON スキーマについて間違いなく何かが欠けています。
よろしくお願いします。