From 8a7fbad84879f277e10f857004c31d57aeecbd5a Mon Sep 17 00:00:00 2001
From: huanghongfa <huanghongfa123456>
Date: 星期五, 14 五月 2021 11:22:53 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/test' into test
---
springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/config/SwaggerConfig.java | 66 +++++++++++++++++++++++++++++++++
1 files changed, 66 insertions(+), 0 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
new file mode 100644
index 0000000..1fb184d
--- /dev/null
+++ b/springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/config/SwaggerConfig.java
@@ -0,0 +1,66 @@
+package com.panzhihua.zuul.config;
+
+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;
+import springfox.documentation.builders.PathSelectors;
+import springfox.documentation.builders.RequestHandlerSelectors;
+import springfox.documentation.spi.DocumentationType;
+import springfox.documentation.spring.web.plugins.Docket;
+import springfox.documentation.swagger.web.SwaggerResource;
+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;
+import static java.util.stream.Collectors.toCollection;
+
+/**
+ * @program: springcloud_k8s_panzhihuazhihuishequ
+ * @description: swagger
+ * @author: huang.hongfa weixin hhf9596 qq 959656820
+ * @create: 2020-11-26 16:57
+ **/
+@Configuration
+@EnableSwagger2
+@Primary
+public class SwaggerConfig implements SwaggerResourcesProvider {
+
+ //RouteLocator可以根据zuul配置的路由列表获取服务
+ private final RouteLocator routeLocator;
+
+ private String[]ids=new String[]{"appletsbackstage","applets","communitybackstage", "shopbackstage"};
+
+ public SwaggerConfig(RouteLocator routeLocator) {
+ this.routeLocator = routeLocator;
+ }
+ /**
+ * Gets a result.
+ *
+ * @return a result
+ */
+ @Override
+ public List<SwaggerResource> get() {
+ List resources = new ArrayList();
+ Arrays.asList(ids).forEach(id->{
+ resources.add(swaggerResource(id, MessageFormat.format("/api/{0}/v2/api-docs", id), "1.0"));
+ });
+ return resources;
+ }
+
+ private SwaggerResource swaggerResource(String name, String location, String version) {
+ SwaggerResource swaggerResource = new SwaggerResource();
+ swaggerResource.setName(name);
+ swaggerResource.setLocation(location);
+ swaggerResource.setSwaggerVersion(version);
+ return swaggerResource;
+ }
+
+
+}
--
Gitblit v1.7.1