НЕ должен иметь дополнительных свойств
Я новичок в спецификации Open API (я использую 3.0). Я играю с онлайн-инструментом Swagger Editor и получаю странную ошибку:
"НЕ ДОЛЖЕН иметь дополнительные свойства AdditionalProperty: Data1, Data2"
Вот пример файла YAML, с которым я работаю:
paths:
/api/assignment:
post:
tags:
- Assignment
summary: "Endpoint to create Resources in system"
description: "This endpoint will create blah blah"
operationId: CreateResource
parameters:
- name: assignment
in: body
description: "This is an object to be sent"
required: true
schema:
type: object
properties:
Ganesh:
type: integer
Test:
type: string
RefClaim:
Data1:
FirstName:
type: string
LastName:
type: string
Data2:
FirstName2:
type: string
LastName2:
type: string
Я видел все вопросы, задаваемые и пытался с ними, но я не мог получить ответ. Примечание: я использую спецификацию Open Api 3.0.1
1 ответ
Решение
Есть несколько вопросов:
1) in: body
параметры OpenAPI 2.0. OpenAPI 3.0 использует requestBody
вместо.
2) Вложенные объекты также нуждаются в type: object
а также properties
ключевые слова.
Правильная версия:
paths:
/api/assignment:
post:
tags:
- Assignment
summary: "Endpoint to create Resources in system"
description: "This endpoint will create blah blah"
operationId: CreateResource
requestBody: # <-----------
required: true
content:
application/json:
schema:
type: object
properties:
Ganesh:
type: integer
Test:
type: string
RefClaim:
type: object # <-----------
properties: # <-----------
Data1:
type: object # <-----------
properties: # <-----------
FirstName:
type: string
LastName:
type: string
Data2:
type: object # <-----------
properties: # <-----------
FirstName2:
type: string
LastName2:
type: string