如何在 Open API 3.0 中为 GET API 定义 Map 对象

Mam*_*a K 2 java yaml swagger openapi openapi-generator

我有 GET API,它将 Map 作为请求参数。如何在 Open API 3.0 中以 yaml 格式定义它

@GetMapping
public void getDevicesInfo(@RequestParam(required = false) Map parameters)
{

}
Run Code Online (Sandbox Code Playgroud)

开放API不支持Map类型。

Sur*_*tam 8

在您的文件中,您需要在 Java 中YAML添加additionalPropertiesfor并使用for as :Mapparameters@RequestParam

/api/v1/test:
  get:
    tags:
      - test
    operationId: getDevicesInfo
    parameters:
      - name: parameters
        in: query
        required: false
        schema:
          type: object
          additionalProperties:
            type: object
    responses:
      '200':
        description: OK
Run Code Online (Sandbox Code Playgroud)

生成的 GET API 如下所示:

在此输入图像描述

我希望它对你有帮助:)