0

json スキーマを使用しようとしています。ここでは簡単な例を示します。サイトを使用しています: http://www.jsonschemavalidator.net/

スキーマ:

{ 
      'Foods':
      { 
        'type': 'array', 
        'items':
        {
          'GoodFoods': { 'type':'string' },
          'NastyFoods': { 'type':'string' },
          'BlendFoods': { 'type': 'string' }
        },      
        'required': ['BlendFoods'],
      }
}

入力 JSON:

{
  "Foods": 
  [
      {
        "GoodFoods": "Pasta",
        "NastyFoods": true,

      }
  ]
}

ここでの考え方は、「BlendFoods」プロパティが欠落しており、NastyFoods が文字列ではなくブール値であることを訴える必要があるということです。しかし、代わりに「エラーは見つかりませんでした。JSON はスキーマに対して検証します」と表示されます。それは私が望むものではありません。

私はこれで多くのことを試しましたが、スキーマで何が間違っているのかわかりません。何かアイデアはありますか?

よろしくロブ

4

2 に答える 2

4

修正されたスキーマ:

{
  "type": "object",
  "properties": {
    "Foods": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "GoodFoods": {
            "type": "string"
          },
          "NastyFoods": {
            "type": "string"
          },
          "BlendFoods": {
            "type": "string"
          }
        },
        "required": [
          "BlendFoods"
        ]
      }
    }
  }
}

このサイトを参照して、参考にしてください。

于 2016-09-16T09:07:08.240 に答える
0

true の後に余分なコンマがあります。

これを試して:

  {
      "Foods": 
      [
          {
            "GoodFoods": "Pasta",
            "NastyFoods": true

          }
      ]
    }
于 2016-09-16T09:13:37.950 に答える