我想在openAPI
中定义枚举。
我看了这篇文章:
How to define an enum in OpenAPI (Swagger)?
我希望能够看到如下的枚举:
我使用components
,并将其定义为:
components:
schemas:
FilterImg:
type: object
properties:
name:
type: string
enum: ["img_1", "img_2"]
value:
type: string
我正在使用它:
post:
summary: Add new img
tags:
- img
description: Lets a user post a new img
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/FilterImg'
responses:
'200':
description: Successfully
但是我看不到enum滚动菜单(在web浏览器中),正如我们在示例中看到的那样。
我错过了什么?
2条答案
按热度按时间3pmvbmvn1#
你在内容类型中传递
application/json
,你想要enum dropdown
,这怎么可能呢?您需要从Swagger Docs和Openapi Specification文档中了解更多关于swagger的信息。
无论如何,我得到了一个想法,你需要这个下拉菜单的身体,所以在这里我刚刚添加了
application/x-www-form-urlencoded
内容类型:剩下的事情都一样。
它看起来像:
wwodge7n2#
对于JSON/XML请求和响应主体,各个主体字段的枚举值显示在模式文档中,即在Schema选项卡上(对于OpenAPI 2.0,则在Model选项卡上)。