Browse Source

版本升级内容修正

gaodm 6 years ago
parent
commit
ab9451a0a6

+ 70 - 70
gateway-service/src/main/java/com/diagbot/config/RouteConfigurer.java

@@ -1,70 +1,70 @@
-//package com.diagbot.config;
-//
-//import org.springframework.cloud.client.discovery.DiscoveryClient;
-//import org.springframework.cloud.gateway.discovery.DiscoveryClientRouteDefinitionLocator;
-//import org.springframework.cloud.gateway.discovery.DiscoveryLocatorProperties;
-//import org.springframework.cloud.gateway.route.RouteDefinitionLocator;
-//import org.springframework.context.annotation.Bean;
-//import org.springframework.context.annotation.Configuration;
-//import org.springframework.http.HttpHeaders;
-//import org.springframework.http.HttpMethod;
-//import org.springframework.http.HttpStatus;
-//import org.springframework.http.codec.ServerCodecConfigurer;
-//import org.springframework.http.codec.support.DefaultServerCodecConfigurer;
-//import org.springframework.http.server.reactive.ServerHttpRequest;
-//import org.springframework.http.server.reactive.ServerHttpResponse;
-//import org.springframework.web.cors.reactive.CorsUtils;
-//import org.springframework.web.server.ServerWebExchange;
-//import org.springframework.web.server.WebFilter;
-//import org.springframework.web.server.WebFilterChain;
-//import reactor.core.publisher.Mono;
-//
-///**
-// * @Description: 跨域路由配置
-// * @author: gaodm
-// * @time: 2018/9/28 9:39
-// */
-//@Configuration
-//public class RouteConfigurer {
-//
-//    private static final String ALL = "*";
-//    private static final String MAX_AGE = "18000L";
-//
-//    @Bean
-//    public RouteDefinitionLocator discoveryClientRouteDefinitionLocator(DiscoveryClient discoveryClient,
-//                                                                        DiscoveryLocatorProperties properties) {
-//        return new DiscoveryClientRouteDefinitionLocator(discoveryClient, properties);
-//    }
-//
-//    @Bean
-//    public ServerCodecConfigurer serverCodecConfigurer() {
-//        return new DefaultServerCodecConfigurer();
-//    }
-//
-//    @Bean
-//    public WebFilter corsFilter() {
-//        return (ServerWebExchange ctx, WebFilterChain chain) -> {
-//            ServerHttpRequest request = ctx.getRequest();
-//            if (!CorsUtils.isCorsRequest(request)) {
-//                return chain.filter(ctx);
-//            }
-//            HttpHeaders requestHeaders = request.getHeaders();
-//            ServerHttpResponse response = ctx.getResponse();
-//            HttpMethod requestMethod = requestHeaders.getAccessControlRequestMethod();
-//            HttpHeaders headers = response.getHeaders();
-//            headers.add(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN, requestHeaders.getOrigin());
-//            headers.addAll(HttpHeaders.ACCESS_CONTROL_ALLOW_HEADERS, requestHeaders.getAccessControlRequestHeaders());
-//            if (requestMethod != null) {
-//                headers.add(HttpHeaders.ACCESS_CONTROL_ALLOW_METHODS, requestMethod.name());
-//            }
-//            headers.add(HttpHeaders.ACCESS_CONTROL_ALLOW_CREDENTIALS, "true");
-//            headers.add(HttpHeaders.ACCESS_CONTROL_EXPOSE_HEADERS, ALL);
-//            headers.add(HttpHeaders.ACCESS_CONTROL_MAX_AGE, MAX_AGE);
-//            if (request.getMethod() == HttpMethod.OPTIONS) {
-//                response.setStatusCode(HttpStatus.OK);
-//                return Mono.empty();
-//            }
-//            return chain.filter(ctx);
-//        };
-//    }
-//}
+package com.diagbot.config;
+
+import org.springframework.cloud.client.discovery.DiscoveryClient;
+import org.springframework.cloud.gateway.discovery.DiscoveryClientRouteDefinitionLocator;
+import org.springframework.cloud.gateway.discovery.DiscoveryLocatorProperties;
+import org.springframework.cloud.gateway.route.RouteDefinitionLocator;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.http.HttpHeaders;
+import org.springframework.http.HttpMethod;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.codec.ServerCodecConfigurer;
+import org.springframework.http.codec.support.DefaultServerCodecConfigurer;
+import org.springframework.http.server.reactive.ServerHttpRequest;
+import org.springframework.http.server.reactive.ServerHttpResponse;
+import org.springframework.web.cors.reactive.CorsUtils;
+import org.springframework.web.server.ServerWebExchange;
+import org.springframework.web.server.WebFilter;
+import org.springframework.web.server.WebFilterChain;
+import reactor.core.publisher.Mono;
+
+/**
+ * @Description: 跨域路由配置
+ * @author: gaodm
+ * @time: 2018/9/28 9:39
+ */
+@Configuration
+public class RouteConfigurer {
+
+    private static final String ALL = "*";
+    private static final String MAX_AGE = "18000L";
+
+    @Bean
+    public RouteDefinitionLocator discoveryClientRouteDefinitionLocator(DiscoveryClient discoveryClient,
+                                                                        DiscoveryLocatorProperties properties) {
+        return new DiscoveryClientRouteDefinitionLocator(discoveryClient, properties);
+    }
+
+    @Bean
+    public ServerCodecConfigurer serverCodecConfigurer() {
+        return new DefaultServerCodecConfigurer();
+    }
+
+    @Bean
+    public WebFilter corsFilter() {
+        return (ServerWebExchange ctx, WebFilterChain chain) -> {
+            ServerHttpRequest request = ctx.getRequest();
+            if (!CorsUtils.isCorsRequest(request)) {
+                return chain.filter(ctx);
+            }
+            HttpHeaders requestHeaders = request.getHeaders();
+            ServerHttpResponse response = ctx.getResponse();
+            HttpMethod requestMethod = requestHeaders.getAccessControlRequestMethod();
+            HttpHeaders headers = response.getHeaders();
+            headers.add(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN, requestHeaders.getOrigin());
+            headers.addAll(HttpHeaders.ACCESS_CONTROL_ALLOW_HEADERS, requestHeaders.getAccessControlRequestHeaders());
+            if (requestMethod != null) {
+                headers.add(HttpHeaders.ACCESS_CONTROL_ALLOW_METHODS, requestMethod.name());
+            }
+            headers.add(HttpHeaders.ACCESS_CONTROL_ALLOW_CREDENTIALS, "true");
+            headers.add(HttpHeaders.ACCESS_CONTROL_EXPOSE_HEADERS, ALL);
+            headers.add(HttpHeaders.ACCESS_CONTROL_MAX_AGE, MAX_AGE);
+            if (request.getMethod() == HttpMethod.OPTIONS) {
+                response.setStatusCode(HttpStatus.OK);
+                return Mono.empty();
+            }
+            return chain.filter(ctx);
+        };
+    }
+}

+ 2 - 0
gateway-service/src/main/resources/bootstrap.yml

@@ -10,6 +10,8 @@ spring:
         serviceId: config-server
         serviceId: config-server
   profiles:
   profiles:
       active: local
       active: local
+  main:
+    allow-bean-definition-overriding: true
 
 
 eureka:
 eureka:
   client:
   client: