当前位置: 首页 > 知识库问答 >
问题:

我可以在swagger 2.0中定义嵌套数组对象吗

徐峰
2023-03-14

我们正在使用Swagger 2.0作为我们的留档。我们正在直接从我们的数据设计文档中按语法创建swagger 2.0规范。

我们的模型非常复杂和嵌套。我想了解我们可以定义内联定义的嵌套数组对象吗?

例如:

{
    "definitions": {
        "user": {
            "type": "object",
            "required": ["name"],
            "properties": {
                "name": {
                    "type": "string"
                },
                "address": {
                    "type": "array",
                    "items": {
                        "type": "object",
                        "properties": {
                            "type": {
                                "type": "string",
                                "enum": ["home",
                                "office"]
                            },
                            "line1": {
                                "type": "string"
                            }
                        },
                        "Person": {
                            "type": "object",
                            "properties": {
                                "name": {
                                    "type": "string"
                                }
                            }
                        }
                    }
                }
            }
        }
    }
} 

在我们的模型中,有很多情况下我们会遇到这种情况,而定义#ref不是我们此时想要考虑的选项。我们需要这个在线处理。

根据以下帖子:https://github.com/swagger-api/swagger-editor/issues/603#even在此处输入代码t-391465196看起来不支持处理内联定义的嵌套数组对象

由于许多大型企业都有非常复杂的数据模型,我们希望在 swagger 2.0 规范中支持此功能。

有没有想过要添加这个功能。

共有1个答案

丁阳羽
2023-03-14

您的文档只是无效,这与嵌套数组无关:Person属性在项目内的Swagger 2.0架构中是不允许的。

架构中唯一允许的属性包括:$ref格式标题描述默认值多个、最大值最大值、最小值、最小长度模式、最大项、最小项、唯一最大属性最小属性必需枚举附加属性、类型项目全部属性鉴别器只读xml外部文档示例

 类似资料:
  • 我正在尝试正确定义 OpenAPI 规范,以便从该规范生成 api 客户端。我已经解决了一个问题,即我们有一个复杂的查询对象,其中包含嵌套对象和对象数组,用于获取 GET 路由。 让我们以这些类为例。 和一个带有@Query decorator的get请求。 我得到的是。 我还尝试通过添加@ApiQuery装饰器来定义查询参数,它几乎可以工作。 - 但是现在我正在将重复的查询定义混入一个。有没有办

  • 我有一个mongodb文档,我正在使用axios ajax调用来提取它。文档有一个对象数组,其中还包含一个嵌套的对象数组。每个对象都分配了一个mongo id。最顶端的数据显示在相应的最顶端的表示组件中,但对象的后续阵列不会显示在其相对表示组件中。我得到的错误是。“TypeError:this.props.card.rdfts未定义”,但会显示它的非数组同级。然而,当我查看react-dev工具和

  • 尝试使用所有独特的硬币进行选择过滤器,但无法正确到达其末尾。 在循环浏览数据时,我可以得到所有硬币的列表。 我还想使用Set方法和spread操作符来获得唯一的值,但我不知道如何组合所有这些。

  • 问题内容: 我映射了多个对象。 我如何嵌套一个循环,以便首先遍历对象,然后遍历(在此示例中)城市?谢谢! 我的没有嵌套外观的渲染函数如下所示: 城市对象示例: 问题答案: 您可以使用嵌套映射来映射内部子对象以及

  • 我需要更新嵌套在我的用户文档中的一个字段,该字段包含一个part对象数组,以添加新的part。一个part对象如下所示: 所以这意味着$addToset对我的情况没有好处...现在我不知道该怎么办。

  • 该示例摘自Elasticsearch参考:https://www.elastic.co/guide/en/Elasticsearch/reference/5.3/nested.html 我的索引和这个差不多。唯一的区别是user.first和user.last是关键字类型,所以我可以对它们使用过滤器。 在两种情况下,我应该使用什么查询来获取与上面数组匹配的文档(正好是两个项,一个项是John Sm