问题描述
我尝试在春季启动时在我的项目中实现swagger2
。我在我的pom.xml
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>3.0.0</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>3.0.0</version>
</dependency>
http.csrf().disable()
.authorizeRequests()
.antMatchers("/v2/api-docs","/configuration/ui","/swagger-resources/**","/configuration/security","swagger-ui.html","/webjars/**","/configuration/**","/swagger*/**").permitAll()
.anyRequest().authenticated()
.and().httpBasic()
.and().sessionManagement().disable();
当我尝试http://localhost:8080/swagger-ui.html
时,出现白标签错误页面- type=Not Found,status=404.
,但是http://localhost:8080/v2/api-docs
可以正常工作,并且我看到有关API端点的所有信息。如何解决?
解决方法
在SpringFox 3中,Swagger ui的位置更改为/swagger-ui/index.html
。如果您使用的是Spring Boot,则应使用springfox-boot-starter
,它会自动注册此端点。否则,您必须“使用资源处理程序配置程序明确注册” [2]。
相关参考文献:
- https://github.com/springfox/springfox/issues/3441 [1]
- http://springfox.github.io/springfox/docs/current/#regular-spring-mvc [2]
我遇到了同样的问题。 v2/api-docs 正在运行,但将地址更改为 http://localhost:8080/swagger-ui/index,现在可以运行了