我正在使用 SpringDoc 并尝试以编程方式将模式添加到 OpenApi,但没有成功。
@Bean
public OpenAPI customOpenAPI() {
Schema mySchema = new Schema<Object>();
mySchema
.type("object")
.$ref("#/components/schemas/MySchema")
.name("MySchema")
.addProperties("testStr", new StringSchema());
return new OpenAPI()
.servers(servers)
.info(new Info().title(title).version(version).description(description))
.components(new Components()
.addSchemas("MySchema" , mySchema)
)
.tags(tags);
}
mySchema 的描述未添加到我在生成的 YAML 文件中看到的模式列表中,如果我尝试引用它:
apiResponses.entrySet().forEach(response -> response.getValue().addHeaderObject("XxX",
new Header().$ref("#/components/schemas/MySchema")));
swagger UI 中显示以下错误:
路径解析器错误。/XX/v1/test/status/{entry}.get.responses.404.headers.XxX.$ref 无法解析引用:无法解析指针:/components/schemas/MySchema
拜托,你能帮我理解吗?
编辑:我正在使用版本1.3.9