目前我正在尝试为我的软件创建一个swagger文件。 现在我想为timeRange创建一个定义。 我的问题是这个数组看起来像这样:
timeRange: {
"2016-01-15T09:00:00.000Z", // this is the start date
"2017-01-15T09:00:00.000Z" // this is the end date
}
如何创建开箱即用的示例值? 它是一个“字符串数组”,至少有两个。
"timeRange": {
"type": "array",
"items": {
"type": "string",
"example": "2017-01-15T09:00:00.000Z,2017-01-15T09:00:00.000Z"
}
}
这会生成如下示例:
"timeRange": [
"2017-01-15T09:00:00.000Z,2017-01-15T09:00:00.000Z"
]
此示例不起作用,因为它是一个数组而不是一个对象。 全部一起: 如何实现两个不同字符串(没有名称)的示例值。
希望你能帮助我! 干杯!答案 0 :(得分:0)
timeRange: {
"2016-01-15T09:00:00.000Z", // this is the start date
"2017-01-15T09:00:00.000Z" // this is the end date
}
无效JSON - "timeRange"
需要用引号括起来,对象/数组语法应该不同。
如果使用对象语法{}
,则需要将值命名为属性:
"timeRange": {
"start_date": "2016-01-15T09:00:00.000Z",
"end_date": "2017-01-15T09:00:00.000Z"
}
否则timeRange
必须是[]
数组:
"timeRange": [
"2016-01-15T09:00:00.000Z",
"2017-01-15T09:00:00.000Z"
]
在第一个示例({}
object)中,您的Swagger看起来如下,每个命名属性都有一个单独的example
:
"timeRange": {
"type": "object",
"properties": {
"start_date": {
"type": "string",
"format": "date-time",
"example": "2016-01-15T09:00:00.000Z"
},
"end_date": {
"type": "string",
"format": "date-time",
"example": "2017-01-15T09:00:00.000Z"
}
},
"required": ["start_date", "end_date"]
}
如果是[]
数组,您可以指定一个多项数组的数组级example
:
"timeRange": {
"type": "array",
"items": {
"type": "string",
"format": "date-time"
},
"example": [
"2016-01-15T09:00:00.000Z",
"2017-01-15T09:00:00.000Z"
]
}