使用Swagger 2.0,如何显示接受多种类型的数组模型?
我正在使用app.swaggerhub.com生成一个swagger 2.0规范 我的代码如下所示:使用Swagger 2.0,如何显示接受多种类型的数组模型?,swagger,api-design,swagger-2.0,swagger-editor,Swagger,Api Design,Swagger 2.0,Swagger Editor,我正在使用app.swaggerhub.com生成一个swagger 2.0规范 我的代码如下所示: 036 definitions: --- // code that defines 'fieldRequirement' and 'slideRequirement' 106 requirement: 107 type: array 108 items: 109 oneOf: 110 - $ref: '#/definition
036 definitions:
--- // code that defines 'fieldRequirement' and 'slideRequirement'
106 requirement:
107 type: array
108 items:
109 oneOf:
110 - $ref: '#/definitions/fieldRequirement'
111 - $ref: '#/definitions/slideRequirement'
这将在同一行(106)上返回3个错误:
我试图实现的是一个模型,该模型允许fieldRequirement或slideRequirement作为requirement中的数组元素。
其中一个不受swagger 2.0支持,仅受支持
但是,如果无法升级到swagger 3.0,您可以使用多态性字段,在您的情况下,您需要一个文件,如:
requirement:
type: array
items:
- $ref: '#/definitions/Requirement'
requirement:
type: array
items:
- $ref: '#/definitions/Requirement'
definitions:
Requirement:
type: object
discriminator: requirementType
properties:
requirementType:
type: string
required:
- requirementType
FieldRequirement:
allOf:
- $ref: '#/definitions/Requirement'
- type: object
properties:
...
SlideRequirement:
allOf:
- $ref: '#/definitions/Requirement'
- type: object
properties:
...