如何防止Swagger在收到大量响应时崩溃?

问题描述 投票:0回答:1

Swagger 在尝试具有较大响应的端点时不断崩溃。

我们尝试禁用语法突出显示以减少文件大小,但仍然遇到问题。

Spring 配置删除语法高亮:

springdoc:
    swagger-ui:
        syntaxHighlight:
            activated: false

我们使用的是SpringBoot 3。

是否有任何已知的方法可以让 swagger 仅返回可下载的文件而不进行预览或允许更大尺寸的 api 响应?

java spring-boot swagger swagger-ui
1个回答
0
投票

springdoc似乎只有syntaxHighlight配置来加速ui,因为它对我的建议没有帮助:

  1. 编写自定义OpenApiCustomizer bean,重写customise(OpenAPI openApi)方法,就像这样

    @覆盖 公共无效定制(OpenAPI openApi){ openApi.getComponents().getSchemas().forEach((s, schema) -> { // 检查示例长度 if (schema.getExample().toString().length() > 1000L) { schema.setExample("在此处下载示例:http://example.com"); } });

  2. 如果问题仅出现在 UI 而不是 swagger json/yaml 文件中,您可以自定义 ui css 和 js,示例在这里 https://github.com/springdoc/springdoc-openapi/issues/737 这有点hacky,但可以提供帮助

    在此输入代码

  3. https://github.com/springdoc/springdoc-openapi 写一个问题,建议解决方案,或者自己写一个

© www.soinside.com 2019 - 2024. All rights reserved.