【发布时间】:2020-08-30 16:12:50
【问题描述】:
我正在尝试为 OpenAPI 3.0 规范中的响应创建链接。更具体地说,我想提供我的一个响应与其他可用操作之间的已知关系(参见Link Object)。
在我的 Spring Boot 项目中,我使用 Springdoc(版本:1.3.9)来生成我的 API 文档。根据@ApiResponse#links 文档,我尝试使用以下端点代码来实现我的目标:
@GetMapping(value = "/avatar", produces = MediaType.APPLICATION_JSON_VALUE)
@Operation(summary = "Request avatar info", operationId = "requestAvatar")
@ResponseStatus(HttpStatus.OK)
@ApiResponses(value = {
@ApiResponse(responseCode = "200", description = "OK", links = {
@Link(name = "Download Avatar", operationId = "downloadAvatar",
parameters = {
@LinkParameter(name = "userId"),
@LinkParameter(name = "uuid")
})
}),
...
@ResponseBody
ResponseEntity<Avatar> requestAvatar();
很遗憾,我在 Swagger 用户界面中看不到任何结果,只有“无链接”描述。
检查生成的 JSON 规范后,我也没有找到任何 links 的 requestAvatar API 键。
我在创建@Link 的过程中是否遗漏了什么,或者 Springdoc 还不支持这些链接?
【问题讨论】:
标签: java spring-boot swagger-ui openapi springdoc