如何验证json模式验证中的枚举值?

时间:2017-02-14 18:46:35

标签: json validation schema

主要问题在于针对处理数组的模式验证json。那么,如果我把一个不同的值似乎仍然有效?

json schema:

{
  "transactions" : {
          "type" : "array",
          "items" : 
          {
            "type" : "object",
            "properties" : {
              "type" : {
                "type" : "string",
                "enum" : ["BREAK"]
              },
              "required":["type"]
          },
            "required":["items"]
}
}
}

输入JSON:

{
  "transactions":[
    {"type":"BREAKDDDDDddddddddddddddddddddddddddddddddddJDJDJDJDJDJDJDJ"}
  ]
}

结果:未发现错误。 JSON验证了模式。

这是错误的,因为我们还没有定义类似" BREAKDDDDD"

的枚举类型

http://www.jsonschemavalidator.net/

对此有何想法?

干杯球员

1 个答案:

答案 0 :(得分:3)

您的JSON架构缺少某些属性。请查看此处提供的有关如何启动架构http://json-schema.org/example1.html的示例。

将您的架构更新为以下内容并尝试

{ "type": "object", "properties": { "transactions": { "type": "array", "items": { "type": "object", "properties": { "type": { "type": "string", "enum": ["BREAK"] } }, "required": ["type"] } } } }

相关问题