我正在 Swagger 编辑器中编写 OpenAPI 定义。
我的类型定义之一包含一个数组,其中包含与父元素类型相同的子元素。 IE。像这样的东西:
definitions:
TreeNode:
type: object
properties:
name:
type: string
description: The name of the tree node.
children:
type: array
items:
$ref: '#/definitions/TreeNode'
但是,Swagger Editor 不会选取递归引用children
array,它简单地显示为“未定义”元素的数组。
有人知道如何做到这一点吗?
你的定义完全没问题。这是在 Swagger 编辑器和 Swagger UI 中渲染递归架构的一个已知问题:
https://github.com/swagger-api/swagger-ui/issues/3325 https://github.com/swagger-api/swagger-ui/issues/3325
解决“示例值”显示问题null
/"string"
/undefined
您可以添加自定义元素来代替递归元素example
到你的架构:
definitions:
TreeNode:
type: object
properties:
name:
type: string
description: The name of the tree node.
children:
type: array
items:
$ref: '#/definitions/TreeNode'
example:
name: foo
children:
- name: bar
- name: baz
children:
- name: qux
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)