Swagger文档错误`应为对象`
我正在手动编写招摇文档。但是我得到了一些错误Swagger文档错误`应为对象`,swagger,swagger-2.0,swagger-editor,Swagger,Swagger 2.0,Swagger Editor,我正在手动编写招摇文档。但是我得到了一些错误应该是object 我不知道为什么下面的代码会出错 events: $ref: "#/def/Events" Events: type: "object" properties: oneOf: - $ref: '#/def/ClassRef' - $ref: '#/def/TypeRef' - $ref: '#/def/EventRef' -
应该是object
我不知道为什么下面的代码会出错
events:
$ref: "#/def/Events"
Events:
type: "object"
properties:
oneOf:
- $ref: '#/def/ClassRef'
- $ref: '#/def/TypeRef'
- $ref: '#/def/EventRef'
- $ref: '#/def/MarketRef'
- $ref: '#/def/OutcomeRef'
ClassRef:
type: "object"
properties:
classRef:
type: "string"
TypeRef:
type: "object"
properties:
typeRef:
type: "string"
EventRef:
type: "object"
properties:
eventRef:
type: "string"
MarketRef:
type: "object"
properties:
marketRef:
type: "string"
OutcomeRef:
type: "object"
properties:
outcomeRef:
type: "string"
我在ClassRef行中得到了这个错误。有人能帮我一下吗?OpenAPI 2.0(swagger:'2.0'
)不支持oneOf
,您需要OpenAPI 3.0(OpenAPI:3.0.0
)才能使用oneOf
假设您使用OpenAPI 3.0,并且所有模式都位于组件/模式
部分,请按如下方式更改事件
模式:
事件:
其中一项:
-$ref:“#/components/schemas/ClassRef”
-$ref:“#/components/schemas/TypeRef”
-$ref:“#/components/schemas/EventRef”
-$ref:“#/components/schemas/MarketRef”
-$ref:“#/components/schemas/OutcomeRef”
但是如果我们使用2.0,如何解决这个问题?我们仍然在使用2.0中的Swagger 2.0,您最多可以将事件
定义为类型:对象
,即具有任意属性的自由形式对象。但是如果您需要oneOf
,则需要迁移到OpenAPI 3.0。这里有工具可以使用,谢谢。你救了我的命