小编rom*_*1bl的帖子

如何在 OpenAPI 的示例声明中使用 $ref?

我正在为一个项目使用 OpenAPI。

我有一个模式“campaign”和另一个模式“campaign_collection”,这只是第一个模式的集合(加上一些额外的元字段)。

Campaign_collection架构:

campaign_collection:
  allOf:
    - $ref: '#/components/schemas/meta_fields'
    - type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/campaign'
    - $ref: '#/components/schemas/collection_meta_fields'
Run Code Online (Sandbox Code Playgroud)

这很好用。但是,当我使用示例时,我想在 Campaign_collection 示例中使用我的 Campaign 示例,如下所示:

活动_集合示例:

campaign_collection:
  value:
    # A few meta fields...
    items:
      - $ref: '#/components/examples/campaign'
    # A few more meta fields...
Run Code Online (Sandbox Code Playgroud)

但是,它不起作用,它在 Swagger UI 中呈现如下:

{
  "items": [
    {
      "$ref": "#/components/examples/campaign"
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

我可以用来$ref引用示例中的另一个示例吗?我想让我的营销活动集合示例与我的营销活动示例保持同步,而不是手动执行。我可以在 OpenAPI 中做到这一点吗?还有别的办法吗?

openapi

8
推荐指数
1
解决办法
5018
查看次数

标签 统计

openapi ×1