我正在使用OpenAPI/Swagger来指定我的API。
有一件事我找不到,那就是如何指定一个集合。
我正在使用https://editor.swagger.io/我输入了整个API。对于要指定为集的属性,我编写了以下代码:
myProperty:
uniqueItems: true
type: array
description: some description
items:
type: string
我本以为uniqueItems会起作用并生成一个Set,但事实并非如此。相反,生成了以下代码:
@JsonProperty("myProperty")
private List<String> myProperty = null;
有没有办法生成类似
@JsonProperty("myProperty")
private Set<String> myProperty = null;
而是?
我在SO中找到了一个可能的解决方案,但这需要在pom中进行一些配置。xml。然而,我使用的在线编辑器只提供了为不同平台生成代码的选项,但不接受pom文件。
OpenAPI(版本3)支持以下数据类型:
OpenAPI v3中不支持集合数据类型。最接近的数据类型是属性uniqueItems设置为true的数组(如您所建议的)。但它仍然是一个对其项的唯一性有约束的数组,而不是一个集合。
因此,您的请求无法在OpenAPI级别上解决。
但是,代码生成器级别可能有一个选项,您需要将问题解决给您选择的代码生成器。
我想为我的Swagger API创建一个递归规范。这个概念似乎没有出现在Swagger文档中,所以我怀疑这是不可能的。因此,我也愿意接受任何由Swagger支持的替代解决方案。 例如,我试图创建一个类似文档的结构。每个文档都有部分,每个部分都有文本和自己的部分。我计划使用这样的APIendpoint: http://a.b.com/docs/{文档ID} http://a.b.com/docs/{
我试图从我的代码库生成数据来填充OpenAPI 3.0输入。 我有一个restendpoint,用于将文件上载到服务器。 我有一个表单作为聚合vaadin上传组件,用于上传文件。路径是,表单参数名是。表单正确地将文件上传到服务器,所以这不是问题所在。 服务器endpoint使用超文本标记语言窗体规范中的XQRS RestXQ上传文件来实现。 我正在尝试为多部分文件上传的OpenAPI 3.0UI创
我正在为一个项目设计openAPI规范。该项目是一个REST API,提供有关酒店的信息。 如果,响应应该如下所示: 我不希望有一个涵盖这两种响应的规范,因为我希望基于其URL参数验证任何给定的响应(例如,时不应该是字段)。到目前为止,我还没能找到一种基于查询参数在openAPI中指定不同返回行为的方法。 是否有一种基于查询参数指定行为的方法?或者,我是否应该将APIendpoint更改为?
我希望在OpenAPI中表示以下JSON对象: 属性的数量和属性名称不是完全预先确定的,所以我希望使用additionalProperties。然而,我不太确定它将如何通过OpenAPI/Swagger 2.0来表示。我试过这个: 或JSON等价物: 但这不太管用。有没有办法保持我想要表示的JSON对象的结构,特别是字符串和整数,而不是任意对象类型?