be002db7e8eeaa400ace36b7255aa6fe2d8b0988
[institute/sw-backend.git] /
1 package com.supwisdom.institute.backend.common.core.transmit.feign;
2
3 import java.net.URLDecoder;
4
5 import lombok.extern.slf4j.Slf4j;
6
7 import com.alibaba.fastjson.JSONObject;
8 import com.supwisdom.institute.backend.common.core.transmit.user.User;
9 import com.supwisdom.institute.backend.common.core.transmit.user.UserContext;
10
11 import feign.RequestInterceptor;
12 import feign.RequestTemplate;
13
14 @Slf4j
15 public class SimpleUserTransmitRequestInterceptor implements RequestInterceptor {
16
17   @Override
18   public void apply(RequestTemplate template) {
19     User user = UserContext.getUser();
20     if (user != null) {
21       try {
22         String jsonUser = JSONObject.toJSONString(user);
23         String headerValue = new String(URLDecoder.decode(jsonUser,"UTF-8"));
24         template.header(UserContext.KEY_USER_IN_HTTP_HEADER, headerValue);
25       } catch (Exception e) {
26         log.warn("User set error", e);
27       }
28     }
29   }
30
31 }