Java OpenApi 生成器使用对象作为查询参数

thm*_*ker 5 java spring pojo swagger openapi

我有以下控制器:

public interface GetScoreController {
  @GetMapping(value = "/score", produces = MediaType.APPLICATION_JSON_VALUE)
  @Operation(parameters = {@Parameter(in = ParameterIn.QUERY, name = "request")})
  Score getScore(ScoreRequest request);
}
Run Code Online (Sandbox Code Playgroud)

我希望 OpenApiScoreRequest在生成 Swagger 文档时将所有属性显示为查询参数,因为这是请求是 POJO 时的结果:

在此处输入图片说明

我不知道实际上 OpenApi 是否允许这样做,但是如果我有太多请求参数,将它们收集到一个独特的 POJO 中会更有用。

Lui*_*ñoz 4

在方法签名中添加@ParameterObject注释。

Score getScore(@ParameterObject ScoreRequest request);
}
Run Code Online (Sandbox Code Playgroud)