我有一个端点来创建地址,并有一个端点来更新地址。在OpenAPI规范中对此进行描述,我想使用一个组件作为地址,这样我就不必两次指定地址。现在的问题是,用于更新的地址对象应包含属性“ id”,而用于创建的对象则不包含。
因此,基本上,我正在寻找一种方法来描述组件部分中的完整地址(包括id属性),然后引用创建端点,但在此不包括“ id”属性。
答案 0 :(得分:1)
您可以使用allOf
关键字as documented here
在下面的示例中,creationType
仅具有name
属性,但是updateType
具有creationType
的所有属性以及id
的属性。
示例:
components:
schemas:
creationType:
type: object
properties:
name:
type: string
updateType:
allOf:
- $ref: '#/components/schemas/creationType'
- type: object
required:
- id
properties:
id:
type: string