Swagger 如何定义具有固定和每端点组件的全局响应结构?

Swagger 如何定义具有固定和每端点组件的全局响应结构?,swagger,openapi,Swagger,Openapi,使用OpenAPI 3.*,是否有一种方法可以定义一个包含固定(由所有端点返回)和每个端点(变化)组件的全局响应结构?例如: 获取/user: { “请求”: {“运行时”:11, “状态”:“确定”}, “用户”:{“名称”:“用户名”} } 与获取数据相比: { “请求”: {“运行时”:42, “状态”:“确定”}, “数据”:{“列表”:[1,2,3]} } 也就是说,所有端点都会返回\uuuuuuuuuuuuuuuuuuuuuuuuuuuuu请求对象,而响应中的其他对象会因端点而异

使用OpenAPI 3.*,是否有一种方法可以定义一个包含固定(由所有端点返回)和每个端点(变化)组件的全局响应结构?例如:

获取
/user

{
“请求”:
{“运行时”:11,
“状态”:“确定”},
“用户”:{“名称”:“用户名”}
}
与获取数据相比:

{
“请求”:
{“运行时”:42,
“状态”:“确定”},
“数据”:{“列表”:[1,2,3]}
}
也就是说,所有端点都会返回
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuu请求
对象,而响应中的其他对象会因端点而异

起点是定义RequestBlock:

components
  schemas:
    RequestBlock:
      properties:
        __request__:
          description: "API request details and service time"
          properties:
            status:
              type: string
              description: request status
              example: "OK"
            runtime:
              type: integer
              description: API request service time
              example: 42
allOf
可用于组合固定和每端点响应组件:

paths:
  /user:
    get:
      summary: user details
      responses:
        200:
          content:
            application/json:
              schema:
                allOf:
                  - $ref: "#/components/schemas/RequestBlock"
                  - $ref: "#/components/schemas/User"
但是,
allOf
块必须包含在每个端点和每个状态代码响应类型(200、401、404..)上。是否有一种更优雅的,全局方法来定义上述响应结构