包含swagger中不同对象类型数组的模型响应

包含swagger中不同对象类型数组的模型响应,swagger,Swagger,我想对一个响应对象进行建模,该对象包含一组不同类型的swagger对象,如下所示: { "table": [ { "user" : [] }, { "customer": [] }, { "employee": [] } ] } 我尝试了下面的解决方案,但它将所有属性包装在一个对象{[{“user”:[],“customer

我想对一个响应对象进行建模,该对象包含一组不同类型的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' 

这将在下一版本的OpenAPI规范(3.0)中得到支持,下面是有关此功能的相关讨论:

以下是一个示例(在上面的URL中提供):

有针对OpenAPI/Swagger 2.0的解决方案。
{
  "oneOf": [
    { "$ref": "Cat" },
    { "$ref": "Dog" }
  ]
}