У меня есть следующий json, я пытался создать чванство для использования спецификаций openapi3.
где числовой ключ (т. Е. "1111") - это динамический уникальный идентификатор.
{
"11111": {
"cat1": {
"catId": "abcd",
"value": 700
},
"cat2": {}
},
"11112": {
"cat1": {
"catId": "xyz",
"value": 40
},
"cat2": {
"catId": "fghj",
"value": 40
}
},
"45677": {
"cat1": {
"catId": "abcd",
"value": 50
},
"cat2": {
"catId": "xyz",
"value": 50
}
},
"date": "2019-05-29"
}
Я попробовал инструмент для генерации спецификации на основе образца json http://apistudio.io/, но он действительно не дал мне то, что я искал.
Это самое близкое, что я получил, но это не совсем то, что я хочу:
responses:
200:
description: category response
content:
application/json:
schema:
properties:
date:
type: string
format: date
categories:
properties:
key:
type: string
cat1:
items:
$ref: '#/components/schemas/cat1'
cat2:
items:
$ref: '#/components/schemas/cat2'
404:
description: error
application/json:
schema:
$ref: '#/components/schemas/error'
components:
schemas:
cat1:
required:
- cadId
- value
properties:
cadId:
description: Category id
type: string
enum: [
abcd
xyz
]
value:
type: number
format: int64
cat2:
required:
- cadId
- value
properties:
cadId:
description: Category id
type: string
enum: [
fghj
]
value:
type: number
format: int64
error:
type: object
required:
- statusCode
- code
- message
- description
properties:
statusCode:
type: integer
format: int32
code:
type: string
message:
type: string
description:
type: string
Это пример, который генерирует мой код, поскольку вы можете видеть, что он не соответствует тому, что мне нужно:
{
"date": "2019-05-29",
"categories": {
"key": "string",
"cat1": [
{
"cadId": "abcd xyz",
"value": 0
}
],
"cat2": [
{
"cadId": "fghj",
"value": 0
}
]
}
}
Заранее спасибо