相关疑难解决方法(0)

springdoc中的默认响应类

对于某些错误代码,我正在尝试向 API 中的所有端点添加默认错误模型。

我通过阅读以下问题找到了部分解决方案:

这是我为该定制创建的 bean:

    @Bean
    public OpenApiCustomiser customOpenApiCustomiser() {
        return openApi -> {
            openApi.getPaths().values().forEach(pathItem -> pathItem.readOperations().forEach(operation -> {

                Schema sharedErrorSchema = ModelConverters.getInstance()
                        .read(Error.class)
                        .getOrDefault("Error", new Schema());

                MediaType sharedMediaType = new MediaType().schema(sharedErrorSchema);
                Content sharedContent = new Content()
                        .addMediaType(APPLICATION_JSON_VALUE, sharedMediaType);

                ApiResponses apiResponses = operation.getResponses();

                ApiResponse response = new ApiResponse()
                        .description("Unhandled server error")
                        .content(sharedContent);
                apiResponses.addApiResponse("500", response);
            }));
        };
    }
Run Code Online (Sandbox Code Playgroud)

我的 Error 类看起来像:

public class Error {
    private String message;
    private List<ErrorItem> errorItems;
}
Run Code Online (Sandbox Code Playgroud)

问题是,当我在 swagger-ui 中打开端点定义之一时,出现以下错误:

Could …

springdoc springdoc-openapi-ui

4
推荐指数
1
解决办法
2386
查看次数

标签 统计

springdoc ×1

springdoc-openapi-ui ×1