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