我正在为API编写一个昂首阔步的定义文件。 API是用于GET请求的
/path/to/my/api:
get:
summary: My Custom API
description: |
Gets a List of FooBar IDs
produces:
- application/json
tags:
- FooBar
responses:
"200":
description: successful operation
schema:
$ref: "#/definitions/MyCustomType"
...
MyCustomType:
type: object
properties:
myCustomObject
type: ??? # list of string?
答案 0 :(得分:13)
对于字符串列表,您可以描述如下:
type: array
items:
type: string
参考:https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#schemaObject
示例:
答案 1 :(得分:2)
这些评论似乎都没有真正回答这个问题-您如何在OpenAPI / Swagger中定义一组项目?
集合实质上是未重复的枚举值的数组。
给出facebook
,pinterest
,twitter
的可能字符串值,名为share_type
的字段可以具有包含一个或多个其中一个值的值,例如:
有效
facebook
twitter
facebook, twitter
facebook, twitter, pinterest
无效项
instagram
facebook, instagram
pinterest, pinterest
另一个重要的区别是这些值不能重复。这是uniqueItems指令可以提供帮助的地方。
因此,以上述示例为例,OpenAPI规范可能如下所示:
share_type:
type: array
enum:
- facebook
- pinterest
- twitter
uniqueItems: true
items: {}