我将在
Spring Boot(1.4.2v)中使用带有swagger-ui的springfox(2.6.1v).
它的配置看起来:
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.any())
.paths(PathSelectors.any())
.build()
.genericModelSubstitutes(ResponseEntity.class);
}
}
问题是我的招摇是春天安全的背后,我只需要管理员允许访问.
问题是什么应该是一组匹配器允许swagger-ui在我的应用程序中工作?
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests()
.antMatchers("??? <<<what_should_be_here>>> ???") // what should be here?
.hasRole("TENANT_ADMIN");
}
}
最佳答案 好的,首先我找到了解决方案
here以下行:
.antMatchers("/admin/system/state/*", "/v2/api-docs", "/configuration/ui", "/swagger-resources", "/configuration/security", "/swagger-ui.html", "/webjars/**")
但是仍然没有用,因为我已经问了这个问题.但经过深入调查后发现,春狐不支持GSON.当您使用GSON作为“to json”转换器时,swagger-ui会收到略微不同的JSON格式,导致问题…
当我们将转换器更改为Jackson并将上述路径添加到spring-config时,它可以毫无问题地工作.
我甚至要求spring-fox github here上的新功能.