Java tutorial
package com.enerbos.cloud.resource.config; import com.google.common.base.Predicates; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.cors.CorsConfiguration; import org.springframework.web.cors.UrlBasedCorsConfigurationSource; import org.springframework.web.filter.CorsFilter; import springfox.documentation.builders.PathSelectors; import springfox.documentation.service.ApiInfo; import springfox.documentation.service.Contact; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spring.web.plugins.Docket; /** * All rights Reserved, Designed By ? * Copyright: Copyright(C) 2015-2017 * Company ??? * * @author hk * @version 1.0 * @date 2017-01-05 16:06 * @Description */ @Configuration public class SwaggerConfig { /** * ? */ private CorsConfiguration buildConfig() { CorsConfiguration corsConfiguration = new CorsConfiguration(); corsConfiguration.addAllowedOrigin("*"); // 1 corsConfiguration.addAllowedHeader("*"); // 2 corsConfiguration.addAllowedMethod("*"); // 3 return corsConfiguration; } @Bean public CorsFilter corsFilter() { UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(); source.registerCorsConfiguration("/**", buildConfig()); // 4 return new CorsFilter(source); } @Bean public Docket swaggerSpringMvcPlugin() { return new Docket(DocumentationType.SWAGGER_2) .useDefaultResponseMessages(false).apiInfo(apiInfo()).select().paths(Predicates .and(Predicates.not(PathSelectors.regex("/error.*")), PathSelectors.regex("/auth/.*"))) .build(); } private ApiInfo apiInfo() { Contact contact = new Contact("hk", null, "hk@enerbos.com"); return new ApiInfo("???", // "???", //? "1.0.0", // "NO terms of service", contact, // "The Apache License, Version 2.0", // "http://www.apache.org/licenses/LICENSE-2.0.html"// ); } }