如何使用$ ref稍有不同的相同组件模式?

时间:2019-08-23 12:38:31

标签: openapi swagger-editor

我试图重用组件模式作为参考,这些模式根据其用法而有所不同。

我有一个“员工模型”,其中将包含以下内容: EmployeeID和EmployeeName

所以我在YAML中创建了一个组件架构,如下所示:-

components:
    schemas:
        Employee:
            type: object
            properties:
                EmployeeID:
                    type: integer
                EmployeeName:
                    type: string
                EmployeeAge:
                    type: integer

现在我想在多个路径中使用它

  1. 在请求和响应正文中都使用它,但要注意的是 在请求中,我只应输入ID,响应可以保存 所有。
  2. 在响应正文中使用此名称,但只能使用名称和年龄
  3. 在仅具有名称的请求正文中使用此

能否请您推荐使用$ ref的最佳方法并实现以上目标?

1 个答案:

答案 0 :(得分:0)

检查combining schemas上的JSON模式文档;例如,在这种情况下,您将使用allOf

Here's一个相关的答案。