Browse Source

fix cross domain

Mr.qian 1 day ago
parent
commit
06c09a1496

+ 14 - 14
backstage-service/src/main/java/com/txz/backstage/BackstageApplication.java

@@ -74,20 +74,20 @@ public class BackstageApplication extends SpringBootServletInitializer {
     //     }
     // }
     
-    //  @Bean
-    // public CorsWebFilter corsWebFilter() {
-    //     CorsConfiguration config = new CorsConfiguration();
-    //     config.setAllowCredentials(true);
-    //     config.addAllowedOriginPattern("*");
-    //     config.setMaxAge(18000L);
-    //     config.addAllowedMethod("*");
-    //     config.addAllowedHeader("*");
-    //
-    //     org.springframework.web.cors.reactive.UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
-    //     source.registerCorsConfiguration("/**", config);
-    //
-    //     return new CorsWebFilter(source);
-    // }
+    @Bean
+    public CorsWebFilter corsWebFilter() {
+        CorsConfiguration config = new CorsConfiguration();
+        config.setAllowCredentials(true);
+        config.addAllowedOriginPattern("*");
+        config.addAllowedHeader("*");
+        config.setMaxAge(3600L);
+        config.addAllowedMethod("*");
+
+        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
+        source.registerCorsConfiguration("/**", config);
+
+        return new CorsWebFilter(source);
+    }
     
 }
 

+ 9 - 9
backstage-service/src/main/java/com/txz/backstage/configurer/MyWebMvcConfigurer.java

@@ -119,15 +119,15 @@ public class MyWebMvcConfigurer implements WebMvcConfigurer {
     }
 
     // 解决跨域问题
-     @Override
-    public void addCorsMappings(CorsRegistry registry) {
-        registry.addMapping("/**")
-                .allowedOriginPatterns("*")
-                .allowedMethods("GET", "HEAD", "POST", "PUT", "DELETE", "OPTIONS")
-                .allowCredentials(true)
-                .maxAge(3600)
-                .allowedHeaders("*");
-    }
+    //  @Override
+    // public void addCorsMappings(CorsRegistry registry) {
+    //     registry.addMapping("/**")
+    //             .allowedOriginPatterns("*")
+    //             .allowedMethods("GET", "HEAD", "POST", "PUT", "DELETE", "OPTIONS")
+    //             .allowCredentials(true)
+    //             .maxAge(3600)
+    //             .allowedHeaders("*");
+    // }
 
     // 添加拦截器
     @Override

+ 14 - 14
backstage-service/src/main/java/com/txz/backstage/configurer/WebFluxConfig.java

@@ -20,20 +20,20 @@ public class WebFluxConfig {
     @Value("${swagger.resource}")
     private String swaggerResource;
 
-    @Bean
-    public CorsWebFilter corsWebFilter() {
-         CorsConfiguration config = new CorsConfiguration();
-        config.setAllowCredentials(true);
-        config.addAllowedOriginPattern("*");
-        config.addAllowedHeader("*");
-        config.setMaxAge(3600L);
-        config.addAllowedMethod("*");
-
-        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
-        source.registerCorsConfiguration("/**", config);
-
-        return new CorsWebFilter(source);
-    }
+    // @Bean
+    // public CorsWebFilter corsWebFilter() {
+    //      CorsConfiguration config = new CorsConfiguration();
+    //     config.setAllowCredentials(true);
+    //     config.addAllowedOriginPattern("*");
+    //     config.addAllowedHeader("*");
+    //     config.setMaxAge(3600L);
+    //     config.addAllowedMethod("*");
+    //
+    //     UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
+    //     source.registerCorsConfiguration("/**", config);
+    //
+    //     return new CorsWebFilter(source);
+    // }
 
     @Bean
     public SwaggerResourcesProvider swaggerResourcesProvider() {

+ 9 - 0
backstage-service/src/main/resources/bootstrap.properties

@@ -86,6 +86,15 @@ spring.cloud.gateway.httpclient.connect-timeout=500
 spring.cloud.gateway.httpclient.response-timeout=5000
 spring.cloud.gateway.filter.circuit-breaker.enabled=true
 
+spring.cloud.gateway.globalcors.cors-configurations.[/**].allowed-headers=*
+spring.cloud.gateway.globalcors.cors-configurations.[/**].max-age=1296000
+spring.cloud.gateway.globalcors.cors-configurations.[/**].allowedOriginPatterns=*
+spring.cloud.gateway.globalcors.cors-configurations.[/**].allowedMethods[0]=GET
+spring.cloud.gateway.globalcors.cors-configurations.[/**].allowedMethods[1]=POST
+spring.cloud.gateway.globalcors.cors-configurations.[/**].allowedMethods[2]=PUT
+spring.cloud.gateway.globalcors.cors-configurations.[/**].allowedMethods[3]=OPTIONS
+spring.cloud.gateway.globalcors.cors-configurations.[/**].allowedMethods[4]=DELETE
+
 # ??????
 spring.main.allow-circular-references=true