我想在swagger中建模一个包含不同类型对象数组的响应对象,如下所示:
{
"table": [
{
"user" : []
},
{
"customer": []
},
{
"employee": []
}
]
}
我在下面尝试了一个解决方案,但它将所有属性包装在一个对象{[{“user”:[],“customer”:[]}]}中。
responses:
200:
schema:
type: array
items:
type: object
properties:
user:
type: array
items:
$ref: '#/definitions/User'
customer:
type: array
items:
$ref: '#/definitions/Customer'
employee:
type: array
items:
$ref: '#/definitions/Employee'
答案 0 :(得分:2)
这将在下一版本的OpenAPI规范(3.0)中得到支持,以下是有关此功能的相关讨论:
https://github.com/OAI/OpenAPI-Specification/issues/57
以下是一个示例(在上面的URL中提供):
{
"oneOf": [
{ "$ref": "Cat" },
{ "$ref": "Dog" }
]
}