В OpenApi 3 я могу указать несколько схем возврата для одного и того же кода состояния.
В качестве примера: с учетом конечной точки /something
и она может возвращать ApiResultOk
или ApiResultError
.
(Пример из { ссылка })
openapi: 3.0.0
paths:
/something:
get:
responses:
'200':
description: Result
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/ApiResultOk'
- $ref: '#/components/schemas/ApiResultError'
components:
schemas:
ApiResultOk:
type: object
properties:
result:
type: boolean
enum: [true]
token:
type: string
required:
- result
- token
ApiResultError:
type: object
properties:
result:
type: boolean
enum: [false]
errorCode:
type: string
errorMsg:
type: string
Можно ли указать разные заголовки для связанных схем?
(В качестве обходного пути заголовки могут быть необязательными с описанием, если оно предоставлено.)