首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Azure API-management中单个阵列的多个阵列定义

Azure API-management中单个阵列的多个阵列定义
EN

Stack Overflow用户
提问于 2019-09-05 22:00:12
回答 1查看 502关注 0票数 0

我创建了一个返回数组的项目。导入此swagger.json后,查看swagger.json一切正常。但是,当我从开发人员门户下载API定义时,我看到一些对象,如...Array、...数组-1、...数组-2。我没想到会这样:

我如何防止这种情况发生?如何才能确保生成的对象与正常对象的行为相同(所以没有虚线,而是点)。我创建了一个重现我的问题的示例项目:https://github.com/mvdiemen/SwaggerArrayGenerationExample

这是否与此处描述的Azure API管理中的更改有关?:https://blog.tomkerkhove.be/2018/04/13/changes-to-azure-api-management-openapi/

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-06 16:48:32

APIM不支持内联架构。尝试仅通过$ref为响应/请求指定模式,即使它是您已经定义的对象数组-定义一个类型为数组的新对象并引用它。

所以,不是像这样:

代码语言:javascript
复制
"200": {
    "description": "Success",
    "schema": {
        "uniqueItems": false,
        "type": "array",
        "items": {
            "$ref": "#/definitions/SwaggerGenerationSample.Models.Response.Employee"
        }
    }
}

在定义中定义数组本身并引用它:

代码语言:javascript
复制
"200": {
    "description": "Success",
    "schema": {
        "$ref": "#/definitions/EmployeeArray"
    }
}
...
"definitions": {
    "EmployeeArray": {
        "uniqueItems": false,
        "type": "array",
        "items": {
            "$ref": "#/definitions/SwaggerGenerationSample.Models.Response.Employee"
        }
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57807195

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档