【发布时间】:2020-12-19 01:57:51
【问题描述】:
我是 Swagger.io 的新手,也是 Spring fox 的新手。我遇到的问题是,由于某种原因,一个对象没有正确引用到它的模型。
错误是因为它在 JSON 中是这样结束的:
"schema": {
"$ref": "#/definitions/Error-ModelName{namespace='online.staffmanager.backend.auth.model.dto', name='UserChangeSet'}"
}
如果我将其更改为:
"schema": {
"$ref": "#/definitions/UserChangeSet"
}
确实有效。而且我不知道为什么注释会这样映射它。
我的注释:
@Operation(
tags = "auth",
summary = "Create a new User Account",
responses = {
@ApiResponse(
responseCode = "200",
content = @Content(schema = @Schema(implementation = TokenInfo.class))),
@ApiResponse(
responseCode = "201",
content = @Content(schema = @Schema(implementation = UserChangeSet.class)))
}
)
SpringFoxConfig:
@Configuration
@EnableSwagger2
@EnableWebMvc
public class SpringFoxConfig {
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.any())
.paths(PathSelectors.any())
.build();
}
}
注意:我使用的是 Springfox 3.0.0。 提前致谢!
【问题讨论】:
-
我遇到了同样的问题。创建了一个问题来跟踪它 - github.com/springfox/springfox/issues/3646
-
@meshuga 谢谢,我很好奇结果。
标签: spring-boot swagger swagger-ui springfox