如何将ref示例与另一个ref示例一起使用?

时间:2019-12-10 10:19:35

标签: swagger openapi swaggerhub

我试图了解如何将ref嵌套在ref中。

我有2个对象,ResponseObject和LastUpdatedAt:

ResponseObject:
  type: object
  properties:
    code:
      type: integer
      format: int32s
      minimum: 100
      maximum: 600
    message:
      type: string
    data:
      type: object
  required:
    - code
    - message

LastUpdatedAt:
  type: object
  properties:
    last_updated_at:
      type: long
      readOnly: true
      example: 1574933675150

我想要实现的是使我的示例如下所示: desired_result

我一直在尝试没有成功,这是我得到的:

LastUpdatedAtResponse:
  schema:
    $ref: "#/components/schemas/ResponseObject"
  example:
    - code: 200
      message: 'Success'
      data:
        schema:
          $ref: "#/components/schemas/LocalDataLastUpdatedAt"
        example:
          - lastUpdated: 1574933675150

但这最终看起来像这样:

current_state

我的最终目标是让我的所有对象都使用ResponseObject,但我似乎无法使其正常工作。 知道我想念什么吗?

1 个答案:

答案 0 :(得分:0)

example关键字不支持$ref。您需要内联指定整个示例值:

LastUpdatedAtResponse:
  ...
  example:
    - code: 200
      message: 'Success'
      data:
        last_updated_at: 1574933675150


请注意,$ref在多个examples中受支持,但是只能用于引用整个Example Object,不可能$ref仅作为示例的一部分。