SpringMVC + swagger修改swagger-ui.html的访问路径 - Go语言中文社区

SpringMVC + swagger修改swagger-ui.html的访问路径


文档:SpringMVC集成SwaggerUI修改访问路径
链接:http://note.youdao.com/noteshare?id=752e0c4aa08400155a885965d05dd78b&sub=7842F4CB0FF142069D2101920134586A 

需求

springmvc 加入 swagger 依赖:

    //接入swagger
    compile group: 'io.springfox', name: 'springfox-swagger2', version: '2.9.2'
    compile group: 'io.springfox', name: 'springfox-swagger-ui', version: '2.9.2'

屋里知道,集成成功以后,访问 http://xxx:8080/swagger-ui.html 就可以了。

如果想要将访问地址更改成:http://xxx:8080/api/swagger/swagger-ui.html

该怎么办呢?

 

思路

swagger-ui.jar包下面,存放着html和js等文件。

项目启动后,访问 http://xxx:8080/ 可以看到,这些文件会存放在webroot目录下面,和WEB-INF同级

  

解决

1、swagger的配置和使用就省略啦

2、在mvc的配置文件中增加以下配置:

<bean class="com.hfy.config.Swagger2Config" />
<mvc:resources mapping="api/swagger/**" location="classpath:/META-INF/resources/"/>

3、增加一个controller,对一些请求进行转发

@Controller
public class SwaggerController {

    @RequestMapping("/api/swagger/swagger-resources")
    public String resource() {
        return "forward:/swagger-resources";
    }

    @RequestMapping("/api/swagger/swagger-resources/configuration/ui")
    public String ui() {
        return "forward:/swagger-resources/configuration/ui";
    }

    @RequestMapping("/api/swagger/v2/api-docs")
    public String doc() {
        return "forward:/v2/api-docs";
    }
    @RequestMapping("/api/swagger/swagger-resources/configuration/security")
    public String security() {
        return "forward:/swagger-resources/configuration/security";
    }
}

额外:如果想屏蔽之前的 http://xxx:8080/swagger-ui.html 链接,可以 写个方法,response中设置状态码404。

好了,؏؏☝ᖗ乛◡乛ᖘ☝؏؏

参考

https://github.com/springfox/springfox/issues/1080

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/u014207158/article/details/89947199
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-03-07 23:01:37
  • 阅读 ( 991 )
  • 分类:前端

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢