Commit ed1ca6eef83df53ff1f1888d0dbed1f58001210c
1 parent
d37ff63a
微服务对多租户的支持issues/I5AO20
Showing
1 changed file
with
22 additions
and
2 deletions
jeecg-boot/jeecg-boot-starter/jeecg-boot-starter-cloud/src/main/java/org/jeecg/config/FeignConfig.java
... | ... | @@ -12,6 +12,7 @@ import org.jeecg.common.constant.CommonConstant; |
12 | 12 | import org.jeecg.common.util.DateUtils; |
13 | 13 | import org.jeecg.common.util.PathMatcherUtil; |
14 | 14 | import org.jeecg.common.config.mqtoken.UserTokenContext; |
15 | +import org.jeecg.config.mybatis.TenantContext; | |
15 | 16 | import org.jeecg.config.sign.interceptor.SignAuthConfiguration; |
16 | 17 | import org.jeecg.config.sign.util.HttpUtils; |
17 | 18 | import org.jeecg.config.sign.util.SignUtil; |
... | ... | @@ -73,10 +74,27 @@ public class FeignConfig { |
73 | 74 | } |
74 | 75 | log.info("Feign Login Request token: {}", token); |
75 | 76 | requestTemplate.header(CommonConstant.X_ACCESS_TOKEN, token); |
77 | + | |
78 | + //update-begin-author:taoyan date:2022-6-23 for: issues/I5AO20 多租户微服务之间调用找不到tenant-id(自定义页面) | |
79 | + // 将tenantId信息放入header中 | |
80 | + String tenantId = request.getHeader(CommonConstant.TENANT_ID); | |
81 | + if(tenantId==null || "".equals(tenantId)){ | |
82 | + tenantId = request.getParameter(CommonConstant.TENANT_ID); | |
83 | + } | |
84 | + log.info("Feign Login Request tenantId: {}", tenantId); | |
85 | + requestTemplate.header(CommonConstant.TENANT_ID, tenantId); | |
86 | + //update-end-author:taoyan date:2022-6-23 for: issues/I5AO20 多租户微服务之间调用找不到tenant-id(自定义页面) | |
87 | + | |
76 | 88 | }else{ |
77 | 89 | String token = UserTokenContext.getToken(); |
78 | 90 | log.info("Feign no Login token: {}", token); |
79 | 91 | requestTemplate.header(CommonConstant.X_ACCESS_TOKEN, token); |
92 | + | |
93 | + //update-begin-author:taoyan date:2022-6-23 for: issues/I5AO20 多租户微服务之间调用找不到tenant-id(自定义页面) | |
94 | + String tenantId = TenantContext.getTenant(); | |
95 | + log.info("Feign no Login tenantId: {}", tenantId); | |
96 | + requestTemplate.header(CommonConstant.TENANT_ID, tenantId); | |
97 | + //update-end-author:taoyan date:2022-6-23 for: issues/I5AO20 多租户微服务之间调用找不到tenant-id(自定义页面) | |
80 | 98 | } |
81 | 99 | |
82 | 100 | //================================================================================================================ |
... | ... | @@ -99,7 +117,9 @@ public class FeignConfig { |
99 | 117 | log.info(" Feign request params sign: {}",sign); |
100 | 118 | log.info("============================ [end] fegin starter url ============================"); |
101 | 119 | requestTemplate.header(CommonConstant.X_SIGN, sign); |
102 | - requestTemplate.header(CommonConstant.X_TIMESTAMP, DateUtils.getCurrentTimestamp().toString()); | |
120 | + //update-begin--author:taoyan---date:20220421--for: VUEN-410【签名改造】 X-TIMESTAMP牵扯 | |
121 | + requestTemplate.header(CommonConstant.X_TIMESTAMP, String.valueOf(System.currentTimeMillis())); | |
122 | + //update-end--author:taoyan---date:20220421--for: VUEN-410【签名改造】 X-TIMESTAMP牵扯 | |
103 | 123 | } catch (IOException e) { |
104 | 124 | e.printStackTrace(); |
105 | 125 | } |
... | ... | @@ -141,7 +161,7 @@ public class FeignConfig { |
141 | 161 | return new SpringEncoder(feignHttpMessageConverter()); |
142 | 162 | } |
143 | 163 | |
144 | - @Bean("starterFeignDecoder") | |
164 | + @Bean | |
145 | 165 | public Decoder feignDecoder() { |
146 | 166 | return new SpringDecoder(feignHttpMessageConverter()); |
147 | 167 | } |
... | ... |