From d2a9c47a32695f8cab1384679fb64e8b440ca9e1 Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期一, 05 八月 2024 14:19:47 +0800 Subject: [PATCH] 优云token接口 --- ycl-server/src/main/java/com/ycl/interceptor/YYFeignInterceptor.java | 39 ++++++++++++++++++++++++++++++++++++++- 1 files changed, 38 insertions(+), 1 deletions(-) diff --git a/ycl-server/src/main/java/com/ycl/interceptor/YYFeignInterceptor.java b/ycl-server/src/main/java/com/ycl/interceptor/YYFeignInterceptor.java index 53dcb3a..52ec880 100644 --- a/ycl-server/src/main/java/com/ycl/interceptor/YYFeignInterceptor.java +++ b/ycl-server/src/main/java/com/ycl/interceptor/YYFeignInterceptor.java @@ -1,15 +1,52 @@ package com.ycl.interceptor; +import com.alibaba.fastjson2.JSONObject; +import com.ycl.feign.UYClient; +import com.ycl.platform.domain.param.UY.UYTokenParam; +import com.ycl.utils.redis.RedisCache; import feign.RequestInterceptor; import feign.RequestTemplate; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Lazy; +import org.springframework.data.redis.core.RedisTemplate; + +import java.util.concurrent.TimeUnit; + /** * 浼樹簯璇锋眰鎷︽埅鍣� */ +@Slf4j public class YYFeignInterceptor implements RequestInterceptor { + @Autowired + @Lazy + private UYClient uyClient; + @Autowired + private RedisCache redisCache; + @Value("${youYun.email}") + private String email; + @Value("${youYun.passwd}") + private String passwd; + @Override public void apply(RequestTemplate requestTemplate) { System.out.println("wodefa"); - requestTemplate.header("token", "auth"); + String uyToken = redisCache.getCacheObject("UY_Token"); + if (uyToken == null) { + uyToken = getToken(); + } + requestTemplate.header("Cookie", "token"+uyToken); + } + + private String getToken() { + UYTokenParam param = new UYTokenParam(); + param.setPasswd(passwd); + param.setEmail(email); + JSONObject jsonObject = uyClient.getToken(param); + log.info("璇锋眰token鏁版嵁鏍煎紡" + jsonObject); + redisCache.setCacheObject("Uy_Token",jsonObject.toJSONString(),3600, TimeUnit.SECONDS); + return "1"; } } -- Gitblit v1.8.0