openapi相关内容

在 OpenAPI/Swagger 文件中声明日期的正确方法是什么?

在 swagger-file 对象中声明日期的正确方法是什么?我认为是: 开始日期:类型:字符串描述:开始日期示例:“2017-01-01"格式:日期 但我看到很多这样的声明: 开始日期:类型:字符串描述:开始日期示例:“2017-01-01"格式:日期模式:“YYYY-MM-DD"最小长度:0最大长度:10 谢谢. 解决方案 OpenAPI Specification 说你必 ..
发布时间:2022-01-22 17:46:39 其他开发

如何指定一个属性可以是空的,也可以是带有招摇的引用

如何将属性指定为 null 或引用? 讨论如何使用 jsonschema 将属性指定为 null 或引用. 我希望用 swagger 做同样的事情. 回顾上面的答案,使用 jsonschema,可以这样做: {“定义":{“富":{# 一些复杂的对象}},“类型":“对象",“特性": {“富":{“一个":[{"$ref": "#/definitions/Foo"},{“类型":“ ..
发布时间:2022-01-22 17:43:35 其他开发

如何在 OpenAPI 3 中定义另一个模式的数组?

我已经定义了这个架构: 用户:类型:对象必需的:- ID- 用户名特性:ID:类型:整数格式:int32只读:真xml:属性:真描述:用户ID用户名:类型:字符串只读:真描述:用户名名:类型:字符串描述:用户名姓:类型:字符串描述:用户姓氏头像:$ref: '#/components/schemas/Image'例子:编号:10用户名:jsmith名字:杰西卡姓氏:史密斯头像:图片放在这里xml ..
发布时间:2022-01-22 17:43:05 其他开发

如何不在几乎所有路径中复制粘贴 3 个通用错误响应?

我希望我的几乎所有路径都具有以下 3 个通用错误响应.我如何在 Swagger 中描述它而不到处复制粘贴这些行? 401:描述:请求者未经授权.架构:$ref: '#/定义/错误'500:描述:“出了点问题.这是服务器的错."架构:$ref: '#/定义/错误'503:描述:服务器不可用.也许有维护?架构:$ref: '#/定义/错误' 我如何在请求中使用它的示例: 路径:/角色:得到:摘 ..
发布时间:2022-01-22 17:42:43 其他开发

如何在 Swagger 2.0 中对多个参数进行分组?

是否可以将多个参数分组以在多个路由中引用它们? 例如,我在每条路线中都有我需要的参数组合.它们被定义为全局参数.如何将它们分组? 我想到了这样的定义: 参数:元数据参数:# 元数据属性- 名称:身份证在:查询描述:条目识别号必需:假类型:整数- 名称:time_start在:查询描述:耀斑开始时间必需:假类型:字符串- 名称:纳尔在:查询描述:活动区域号必需:假类型:字符串 然后在 ..
发布时间:2022-01-22 17:42:26 其他开发

如何在 Swagger (OpenAPI) 中发布文件?

我正在使用 Swagger 来记录我的 REST 服务.我的一项服务需要上传 CSV 文件.我在 JSON API 定义的 parameters 部分添加了以下内容: {“名称":“文件","description": "zip 格式的文件.",“参数类型":“正文",“必需":是的,“allowMultiple":假,“数据类型":“文件"} 现在我在 Swagger UI 页面上看到了文件 ..
发布时间:2022-01-22 17:39:58 其他开发

覆盖“主机"和“basePath"在“/{path}"处等级

问题陈述: 出于“奇怪"的原因,我们对 API 的所有操作都有不同的“主机".我们有这样的 API: 操作 1:获取 https://host1:port1/api/resources 操作 2:获取 https://host1:port2/api/resources/{id} 操作 3:POST https://host2:port3/api/resources 操作 4:PO ..
发布时间:2022-01-22 17:39:19 其他开发

为什么 `additionalProperties` 是在 Swagger/OpenAPI 2.0 中表示 Dictionary/Map 的方式

虽然我在 OpenAPI 规范中看到了示例: 类型:对象附加属性:$ref: '#/definitions/ComplexModel' 这对我来说并不明显为什么使用 additionalProperties 是 Map/Dictionary 的正确模式. 规范中关于 additionalProperties 的唯一具体内容是: 以下属性取自 JSON 架构定义,但它们的定义已根据 ..
发布时间:2022-01-22 17:36:52 其他开发

如何从 OpenAPI/Swagger 模型定义生成 JSON 示例?

我正在为具有 OpenAPI (Swagger) 定义的 REST API 构建一个模糊器. 我想测试 OpenAPI 定义中的所有可用路径,生成数据以测试服务器,分析响应代码和内容,并验证响应是否符合 API 定义. 我正在寻找一种从模型定义中生成数据(JSON 对象)的方法. 例如,给定这个模型: ...“宠物": {“类型":“对象",“必需的": [“名称",“照片网址 ..
发布时间:2022-01-22 17:35:47 其他开发

Swagger/OpenAPI - 使用 $ref 传递可重用的定义参数

假设我有一个像 limit 这样的参数.这个到处都在使用,如果我需要更新它,就不得不到处更改它是一件痛苦的事: 参数:- 名称:限制在:查询描述:限制返回结果的数量必需:假类型:数字格式:int32 我可以使用 $ref 在别处定义它并使其可重用吗?我遇到 这张票 这表明有人想要更改或改进功能,但我不知道它今天是否已经存在? 解决方案 这个功能在 Swagger 2.0 中已经存在.链 ..
发布时间:2022-01-22 17:35:15 其他开发

Swagger:从枚举中取一个或多个值

我正在编写一个 OpenAPI (Swagger) 定义,其中查询参数可以不带任何值或 N 个值,如下所示: /path?sort=field1,field2 如何在 OpenAPI YAML 中编写这个? 我尝试了以下方法,但没有产生预期的结果: - 名称:排序在:查询架构:类型:字符串枚举:[field1,field2,field3]允许空值:真必需:假描述:按属性对结果进行排序. ..
发布时间:2022-01-22 17:34:45 其他开发

Swagger 2.0:具有不同路径但请求和响应相同的多个 Path 对象

由于某些向后兼容的原因,我需要同时支持路径 /ab 和 /a-b. 两个路径的请求和响应对象将是相同的. 我能否在我的 Swagger 规范中包含类似以下内容,这样我就不必为两个路径重复请求和响应对象定义. 路径:/ab:/a-b:邮政:... 解决方案 是的,你可以有一个引用另一个路径项的路径项: 路径:/ab:邮政:概括: ......回复:.../a-b:$ref: '# ..
发布时间:2022-01-22 17:34:30 其他开发

如何在 OpenAPI (Swagger) 中定义枚举?

有谁知道如何在 OpenAPI 2.0 定义中定义可能的“枚举"值,以便它们显示在 Swagger UI 的“模型"选项卡中?此处示例:https://petstore.swagger.io/#!/pet/addPet 具有 status 属性的枚举选项.如何在 OpenAPI 2.0 中定义这样的枚举? 解决方案 “枚举"在 OpenAPI 2.0 中像这样工作: {“在":“查询" ..
发布时间:2022-01-22 17:34:24 其他开发

使用 $ref 时忽略 Swagger 模式属性 - 为什么?

我正在尝试建立一个时间间隔的Swagger模型,使用一个简单的字符串来存储时间(我知道还有datetime): 定义:时间:类型:字符串描述:时间以 24 小时格式“hh:mm".时间间隔:类型:对象特性:下限:$ref:“#/定义/时间"描述:时间间隔的下限.默认值:“00:00"上界:$ref:“#/定义/时间"描述:时间间隔的上限.默认值:“24:00" 由于某种原因,生成的 HTML ..
发布时间:2022-01-22 17:33:33 其他开发