From b6082fe75b377ac9c177736d98f36ae46e7cdb70 Mon Sep 17 00:00:00 2001
From: 罗yu 元桥 <2376770955@qq.com>
Date: 星期三, 28 四月 2021 10:20:55 +0800
Subject: [PATCH] Merge branch 'master' into 'test'

---
 springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/config/SwaggerConfig.java |   24 ++++++------------------
 1 files changed, 6 insertions(+), 18 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/config/SwaggerConfig.java b/springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/config/SwaggerConfig.java
index 4aefefe..1fb184d 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/config/SwaggerConfig.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/config/SwaggerConfig.java
@@ -3,6 +3,7 @@
 import io.swagger.annotations.ApiOperation;
 import org.springframework.cloud.netflix.zuul.filters.Route;
 import org.springframework.cloud.netflix.zuul.filters.RouteLocator;
+import org.springframework.context.MessageSource;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.context.annotation.Primary;
@@ -14,6 +15,7 @@
 import springfox.documentation.swagger.web.SwaggerResourcesProvider;
 import springfox.documentation.swagger2.annotations.EnableSwagger2;
 
+import java.text.MessageFormat;
 import java.util.*;
 
 import static java.util.stream.Collectors.collectingAndThen;
@@ -33,7 +35,7 @@
     //RouteLocator可以根据zuul配置的路由列表获取服务
     private final RouteLocator routeLocator;
 
-    private String[]ids=new String[]{"appletsbackstage","applets","communitybackstage"};
+    private String[]ids=new String[]{"appletsbackstage","applets","communitybackstage", "shopbackstage"};
 
     public SwaggerConfig(RouteLocator routeLocator) {
         this.routeLocator = routeLocator;
@@ -46,23 +48,9 @@
     @Override
     public List<SwaggerResource> get() {
         List resources = new ArrayList();
-        List<Route> routes = routeLocator.getRoutes();
-        routes = routes.stream().collect(
-                collectingAndThen(
-                        toCollection(() -> new TreeSet<>(Comparator.comparing(Route::getId))), ArrayList::new)
-        );
-        //通过RouteLocator获取路由配置,遍历获取所配置服务的接口文档,这样不需要手动添加,实现动态获取
-        List<String>stringList= Arrays.asList(ids);
-        for (Route route: routes) {
-            String id = route.getId();
-            boolean contains = stringList.contains(id);
-            String fullPath = route.getFullPath();
-            String s = fullPath.replaceFirst("/api", "");
-            String s1 = s.replaceFirst("/" + id, "");
-            if (contains) {
-                resources.add(swaggerResource(id,s1.replace("**", "v2/api-docs"),"1.0"));
-            }
-        }
+        Arrays.asList(ids).forEach(id->{
+            resources.add(swaggerResource(id, MessageFormat.format("/api/{0}/v2/api-docs", id), "1.0"));
+        });
         return resources;
     }
 

--
Gitblit v1.7.1