当前位置: 首页 > 知识库问答 >
问题:

Springfox-更改Swagger的路径-UI

贲文景
2023-03-14

共有1个答案

芮星海
2023-03-14

我遵循了以下方法

依赖关系:

implementation 'org.tuckey:urlrewritefilter:4.0.4'

UrlRewrite类:

@Component
public class SwaggerUrlRewriteFilter extends UrlRewriteFilter {
  private static final String CONFIG_LOCATION = "/urlrewrite.xml";

  @Value("classpath:/urlrewrite.xml")
  private Resource resource;

  @Override
  protected void loadUrlRewriter(FilterConfig filterConfig) throws ServletException {
    try {
      //Create a UrlRewrite Conf object with the injected resource
      Conf conf = new Conf(filterConfig.getServletContext(), resource.getInputStream(), resource.getFilename(), "@@yourOwnSystemId@@");
      checkConf(conf);
    } catch (IOException ex) {
      throw new ServletException("Unable to load URL rewrite configuration file from " + CONFIG_LOCATION, ex);
    }
  }
}
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 4.0//EN"
        "http://www.tuckey.org/res/dtds/urlrewrite4.0.dtd">
<urlrewrite>
    <rule>
        <from>/swagger/swagger-ui.html</from>
        <to type="passthrough">/swagger-ui.html</to>
    </rule>

    <rule>
        <from>/swagger/webjars/(.*)</from>
        <to type="passthrough">/webjars/$1</to>
    </rule>

    <rule>
        <from>/swagger/v2/api-docs</from>
        <to type="passthrough">/v2/api-docs</to>
    </rule>

    <rule>
        <from>/swagger/configuration/(.*)</from>
        <to type="passthrough">/configuration/$1</to>
    </rule>

    <rule>
        <from>/swagger/swagger-resources</from>
        <to type="passthrough">/swagger-resources</to>
    </rule>
</urlrewrite>
 类似资料:
  • 我正在运行一个服务,其中可以访问Swagger UI: 但是,它背后是一个代理,比如: Swagger UI生成的URL如下所示:

  • 我正在使用Swagger为Spring boot2微服务创建API留档,我是Swagger的新手。我的Spring启动应用程序具有上下文路径 /api/user/因此该应用程序可在localhost:8080/api/user访问。swagger默认用户界面可在/swagger-ui.html访问。所以从我的项目来看,网址是localhost:8080/api/user/swagger-ui.ht

  • 通过添加这个SwaggerConfig文件并添加以下依赖项,我可以将swagger2设置到我的SpringBoot应用程序中: pom.xml 尽管我的controller类看起来像这样: ...我仍然可以通过执行以下操作来调用该控制器: RESTendpoint的curl-x GET如下所示: 看来spring-boot只是在浏览器中使用简单的旧版http://localhost:8080作为s

  • 我已经尝试更改json文件中的basePath,这似乎只会更改swagger UI的底部“baseurl”。我想去掉在我的招摇过市UI中作为组标题出现的“默认设置”。有人能解决这个问题吗?我正在使用Swagger~2.0。

  • 我最近升级到了最新版本的 显示为必需。 下面是我的控制器方法代码 我尝试添加,默认情况下它是。但是,在炫耀上,它仍然显示为强制性的。 以前在中,它工作正常,在swagger上它被标记为可选 在这方面的任何帮助将不胜感激。 谢谢

  • 我正在使用SpringFox的swagger实现。我想修改swagger-ui.html以获得一个自定义的头值。如何修改此文件?或者告诉spring fox使用备用文件?