Swagger 编辑器如何指定请求正文(POST)中的哪些字段是必需的?

Yts*_*oer 7 swagger-editor openapi

我正在尝试在在线 Swagger 编辑器中的用户类上定义 POST 方法。

我希望能够在请求正文中指定多个字段,并且希望生成的文档能够反映出只有 2 个字段是必需的,其他字段是可选的。

我必须做什么/改变才能做到这一点?

我已经尝试过使用“required”关键字进行各种变体(请参见下图),但无法实现该功能,它没有显示在生成的文档中(请参见右下图和我的注释)红色的)。

这是我在编辑器中的 POST 定义:

在此输入图像描述

这是生成的文档预览,我在其中指出了我希望看到更改的内容。

在此输入图像描述

附言。还有一些(较旧的)帖子解决了这个问题,但我真的不认为这是重复的。

Hel*_*len 10

我希望能够在请求正文中指定多个字段,并且希望生成的文档能够反映出只有 2 个字段是必需的,其他字段是可选的。

你的第二个例子是正确的。要指定所需的对象属性,请required: [prop1, prop2, ...]在对象级别添加(即在 旁边type: object)。列表中未列出的属性required是可选的。如果required未提供列表,则所有属性都是可选的。

type: object
required: [email, password]  # <--------
properties:
  email:
    type: string
  password:
    type: string
  name:
    type: string
Run Code Online (Sandbox Code Playgroud)

在 Swagger UI 中,特定于操作的架构文档显示在架构(或模型)选项卡上。这是显示属性描述、数据类型、“必需”指示符和其他架构信息的地方。

在此输入图像描述

现在我必须弄清楚如何将该“模式”显示为默认值

要使“架构/模型”选项卡默认处于活动状态,请配置 Swagger UI,并将defaultModelRendering选项设置为"model"