Commit c7cae427 by ypenglv

gateway聚合swagger,修改配置

1 parent 01f29afb
...@@ -29,6 +29,9 @@ public class MySwaggerResourceProvider implements SwaggerResourcesProvider { ...@@ -29,6 +29,9 @@ public class MySwaggerResourceProvider implements SwaggerResourcesProvider {
* 网关路由 * 网关路由
*/ */
private final RouteLocator routeLocator; private final RouteLocator routeLocator;
private final String serverName1= "NAFMII-APP";
private final String serverName2= "GATEWAY";
private final String serverName3= "NAFMII-ADMIN";
/** /**
* 网关应用名称 * 网关应用名称
...@@ -47,7 +50,9 @@ public class MySwaggerResourceProvider implements SwaggerResourcesProvider { ...@@ -47,7 +50,9 @@ public class MySwaggerResourceProvider implements SwaggerResourcesProvider {
// 由于我的网关采用的是负载均衡的方式,因此我需要拿到所有应用的serviceId // 由于我的网关采用的是负载均衡的方式,因此我需要拿到所有应用的serviceId
// 获取所有可用的host:serviceId // 获取所有可用的host:serviceId
routeLocator.getRoutes().filter(route -> route.getUri().getHost() != null) routeLocator.getRoutes().filter(route -> route.getUri().getHost() != null)
.filter(route -> !self.equals(route.getUri().getHost())) .filter(route -> !serverName1.equals(route.getUri().getHost()))
.filter(route -> !serverName2.equals(route.getUri().getHost()))
.filter(route -> !serverName3.equals(route.getUri().getHost()))
.subscribe(route -> routeHosts.add(route.getUri().getHost())); .subscribe(route -> routeHosts.add(route.getUri().getHost()));
// 记录已经添加过的server,存在同一个应用注册了多个服务在nacos上 // 记录已经添加过的server,存在同一个应用注册了多个服务在nacos上
......
...@@ -10,6 +10,8 @@ import reactor.core.publisher.Mono; ...@@ -10,6 +10,8 @@ import reactor.core.publisher.Mono;
import springfox.documentation.swagger.web.*; import springfox.documentation.swagger.web.*;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.Optional; import java.util.Optional;
/** /**
......
...@@ -9,6 +9,7 @@ eureka: ...@@ -9,6 +9,7 @@ eureka:
instance: instance:
prefer-ip-address: true prefer-ip-address: true
instance-id: ${spring.cloud.client.ip-address}:${server.port} instance-id: ${spring.cloud.client.ip-address}:${server.port}
statusPageUrl: http://127.0.0.1:9000/swagger-ui.html
spring: spring:
application: application:
name: gateway name: gateway
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!