mac 2 سال پیش
والد
کامیت
3139486a7d

+ 0 - 85
kxs-stat/kxs-stat-api/src/main/java/com/kxs/stat/api/feign/config/KxsStoreFeignClientConfiguration.java

@@ -1,85 +0,0 @@
-package com.kxs.stat.api.feign.config;
-
-import cn.hutool.core.text.CharSequenceUtil;
-import com.kxs.common.core.constant.ServiceNameConstants;
-import com.kxs.stat.api.feign.RemoteKxsStatService;
-import io.seata.core.context.RootContext;
-import jakarta.servlet.http.HttpServletRequest;
-import lombok.RequiredArgsConstructor;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.cloud.client.loadbalancer.reactive.ReactorLoadBalancerExchangeFilterFunction;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.http.HttpHeaders;
-import org.springframework.web.context.request.RequestContextHolder;
-import org.springframework.web.context.request.ServletRequestAttributes;
-import org.springframework.web.reactive.function.client.ClientRequest;
-import org.springframework.web.reactive.function.client.WebClient;
-import org.springframework.web.reactive.function.client.support.WebClientAdapter;
-import org.springframework.web.service.invoker.HttpServiceProxyFactory;
-
-/**
- * <p>
- * 当前服务的webClient配置
- * 服务下的远程调用统一在此配置
- * 使用注册中心 需配置远程调用器 以实现负载均衡
- * </p>
- *
- * @author 没秃顶的码农
- * @date 2023/11/13
- */
-@Configuration
-@RequiredArgsConstructor
-public class KxsStoreFeignClientConfiguration {
-
-	/**
-	 * 负载均衡器
-	 */
-	private final ReactorLoadBalancerExchangeFilterFunction reactorLoadBalancerExchangeFilterFunction;
-
-	private static final String SERVICE_NAME = ServiceNameConstants.CLIENT_NAME + ServiceNameConstants.STAT_SERVICE;
-
-	@Bean("kxsStatFeignClient")
-	public WebClient oauthRequestInterceptor() {
-
-
-		return WebClient.builder()
-			// 给请求添加过滤器,添加自定义的认证头
-			.filter((request, next) -> {
-				ClientRequest.Builder filtered = ClientRequest.from(request);
-
-				// seata XID传递
-				String xid = RootContext.getXID();
-				if (CharSequenceUtil.isNotBlank(xid)) {
-					filtered.header(RootContext.KEY_XID, xid);
-				}
-
-				ServletRequestAttributes requestAttributes = (ServletRequestAttributes) RequestContextHolder
-					.getRequestAttributes();
-				// 不是web请求不传递token
-				if (requestAttributes != null) {
-					HttpServletRequest httpServletRequest = requestAttributes.getRequest();
-					String token = httpServletRequest.getHeader(HttpHeaders.AUTHORIZATION);
-					if (!CharSequenceUtil.isBlank(token)) {
-						// 传递token
-						filtered.header(HttpHeaders.AUTHORIZATION, token);
-					}
-				}
-				return next.exchange(filtered.build());
-			}).filter(reactorLoadBalancerExchangeFilterFunction)
-			.baseUrl(SERVICE_NAME)
-			.build();
-	}
-
-	/**
-	 * 远程统计模块服务
-	 * @param client 客户端
-	 * @return 远程统计模块服务
-	 */
-	@Bean
-	RemoteKxsStatService remoteKxsStoreService(@Qualifier("kxsStatFeignClient") WebClient client) {
-		HttpServiceProxyFactory factory = HttpServiceProxyFactory.builder(WebClientAdapter.forClient(client)).build();
-		return factory.createClient(RemoteKxsStatService.class);
-	}
-
-}

+ 0 - 1
kxs-stat/kxs-stat-api/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports

@@ -1 +0,0 @@
-com.kxs.stat.api.feign.config.KxsStoreFeignClientConfiguration