openapi - 有没有办法覆盖 OAS3 中的属性描述和示例?
问题描述
我一直在寻找有关 OAS3 中继承的资源,但我得到的最接近的是https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md上面没有答案我是寻找。
这是工作示例
components:
schemas:
Pet:
properties:
no_legs:
description: "Number of legs"
type: number
example: 4
Duck:
allOf:
- $ref: '#/components/schemas/Pet'
- type: object
properties:
no_legs:
example: 2
properties:
no_legs:
description: 'Number of webbed feet'
受规范启发的失败示例
Duck:
allOf:
- $ref: '#/components/schemas/Pet'
- type: object
properties:
no_legs:
description: 'Number of webbed feet'
example: 2
我的问题是
我正在查看的最重要的功能是否可用/受支持?
如果是这样,那么合适的方法是什么?
我知道我可以使用组合来解决这个问题,但我会重复很多定义。
解决方案
是的,这本质上是覆盖属性的方法。您在失败的示例中遇到了什么样的错误?它至少在https://editor.swagger.io/上工作得很好。您是否记得openapi: 3.0.0
在文档的根目录中指定?
请注意,以下两个定义是相同的:
Duck:
allOf:
- $ref: '#/components/schemas/Pet'
- type: object
properties:
no_legs:
description: 'Number of webbed feet'
example: 2
Duck:
allOf:
- $ref: '#/components/schemas/Pet'
properties:
no_legs:
description: 'Number of webbed feet'
example: 2
推荐阅读
- javascript - Material-ui 不会根据主题改变 Typography 颜色
- javascript - 如何通过函数参数将“变量名”从一个函数传递给另一个函数?
- php - OpenCart 3:系统缓存清理、ocmod 和 twig。我在控制器中进行了更改,但它没有反映
- xcode - SwiftUI 从下到上反转 ScrollView
- ruby-on-rails - 通过传递 id 将 `accepts_nested_attributes_for` 中的现有记录与 has_one 关联
- python - 如何逐步增加 numpy 数组中的值?
- android - 有没有办法在 AAR 中包含 Dagger 2 生成的代码?
- impala - 我想向 Impala Query 中的现有表添加两个列名
- android - 如何在无法直接访问 View Class 的地方添加 Snackbar
- ruby-on-rails - Ruby:无法通过 Bundler 安装 gem