从Json Schema生成示例Json输出

时间:2014-02-19 23:28:13

标签: java json

我想知道是否有一种方法可以根据json模式输入生成示例json输出。

例如: -

input =>

{
"title": "Example Schema",
"type": "object",
"properties": {
    "firstName": {
        "type": "string"
    },
    "lastName": {
        "type": "string"
    },
    "age": {
        "description": "Age in years",
        "type": "integer",
        "minimum": 0
    }
},
"required": ["firstName", "lastName"]
}

output => 

{     
  "firstName" : "RandomFirstName",
   "lastName" : "RandomLastName"
}

我有一个大型的Json Schema,有大量的验证,所以要生成一个有效的json示例,我可以使用Java手动创建一个,也可以只在文件中输入。有没有更好的方法?

4 个答案:

答案 0 :(得分:7)

您可以尝试JSON Schema Faker。它将采用模式并生成/输出将根据模式进行验证的JSON对象。

答案 1 :(得分:1)

JSONBuddy可以为您完成此操作。它是一个Windows桌面JSON编辑器,可在您编辑架构时生成实时JSON示例数据。

答案 2 :(得分:0)

您还可以在Adobe Ride中使用ModelObject(完整说明:在此处自行插入)。将ModelObject(或其子类)指向Java项目资源中的模式:https://github.com/adobe/ride/blob/develop/sample/sample-service-extension/src/test/java/com/adobe/ride/sample/tests/ObjectCreation.java#L38

您还可以使用Ride Fuzzer Lib轻松测试将否定数据发送到架构节点(基于OWASP和google注入测试字符串的数组以及其他各种类型的数据):https://github.com/adobe/ride/tree/develop/libraries/ride-fuzzer-lib

所有Ride模块都是开源的,免费的:https://github.com/adobe/ride/

答案 3 :(得分:0)

fake-schema-cli是您可以使用的另一个选项。

示例:fake-schema file-input-schema.json > output.json