如何从 Swagger URL 中删除“swagger-ui”?

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

我的 Spring Boot 项目中有以下 URL。

http://localhost:8080/swagger-ui/index.html

我想将其缩短为类似的内容

http://localhost:8080/docs/index.html

我尝试过添加

springdoc.swagger-ui-path: /docs/index.html

到我的 application.yml 但它会将我重定向到

http://localhost:8006/docs/swagger-ui/index.html

我还尝试制作一个自定义控制器,它可以像下面一样重定向我,但它仍然将我发送到相同的 swagger-ui 链接。

public class SwaggerController {

    @RequestMapping("/docs/index.html")
    public void apiDocumentation(HttpServletResponse response) throws IOException {
        response.sendRedirect("/swagger-ui.html");
    }
}
java spring spring-boot swagger swagger-ui
1个回答
0
投票

您可以使用属性设置 Swagger UI 的入口 URL(就像您所做的那样)。

springdoc.swagger-ui.path=/docs

这可行,您可以在文档或 Wiki 页面中提供简短的形式

http://localhost:8006/docs

它将把呼叫者重定向到以下 URL:

http://localhost:8006/docs/swagger-ui/index.html

上述 URL 的最后一部分是硬编码的,无法通过配置更改。

我猜这是有意尊重 Swagger UI 背后团队的版权。同样,您将无法从生成的 HTML 中删除 Swagger 徽标。

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