Swagger - 如何编写通用响应字段?

Swagger - How to write common response field?

我有几个 API,所有 return JSON 都有一个名为 success.

的布尔字段

API 1 {"success": true, "data": "some data"}

API 2 {"success": false, "error": "error message"}

我可以用类似模板的东西写它的 swagger 2.0 文档吗,所以我不需要像这样在每个 API 中复制和粘贴成功字段部分?

  回应:
    200:
      模式:
        特性:
          成功:
            类型:布尔值
             描述:如果请求成功则为真。
          数据:
             ...

  回应:
    200:
      模式:
        特性:
          成功:
            类型:布尔值
             描述:如果请求成功则为真。
          错误:
             ...

谢谢!

是的,对公共字段使用 allOf

responses:
  200:
    schema:
      allOf:
        - $ref: '#/definitions/common'
        - properties:
            data:
            # your details here

definitions:
  Common:
    type: object
    properties:
      success:
        type: boolean
         description: true if the request is successful.

另外:

      schema:
        allOf:
          - $ref: '#/definitions/Common'
          - properties:
              data:
                $ref: '#/definitions/Another'