【问题标题】:Manually specify POST request body in spring boot swagger在spring boot swagger中手动指定POST请求体
【发布时间】:2019-03-26 12:12:35
【问题描述】:

我在下面写了一段代码:

@PostMapping(path = "/process", produces = MediaType.APPLICATION_JSON_VALUE)
@ApiOperation(value = "Get process with given ID", produces = MediaType.APPLICATION_JSON_VALUE,
        response = ProcessType.class)
public ResponseEntity<ProcessType> createProcessType(
        @RequestBody
        @DTO(ProcessTypeDto.class) ProcessType processType
) {
    log.info("POST called on /process");

    ProcessType processTypeResult;
...
...
}

效果很好。但我的问题是招摇。我做了一个自定义注释@DTO,它自动将一个类映射到另一个类。但是,swagger 看到了我的 ProcessType 请求正文,并在该类的 UI 中而不是 ProcessTypeDto 中显示示例。如果我删除 swagger 显示的内容并 POST ProcessTypeDto 代码有效,我希望 swagger 显示 ProcessTypeDto 作为此端点的默认示例,因为它会破坏 codegen。

有没有办法手动指定我想要从 swaggers POV 中覆盖 my@Requestbody 的请求正文?

【问题讨论】:

标签: java spring spring-boot swagger swagger-ui


【解决方案1】:

目前看来你运气不太好,2.0版本会发布

这就是你要找的https://github.com/swagger-api/swagger-core/wiki/Swagger-2.X---Annotations#requestbody

或者至少您可以开始使用候选发布版本 https://mvnrepository.com/artifact/io.swagger/swagger-core

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-11-28
    • 2014-08-30
    • 2023-03-23
    • 2021-03-06
    • 2015-11-06
    • 2016-09-22
    • 2021-02-26
    • 2018-07-18
    相关资源
    最近更新 更多