| | |
| | | |
| | | import com.ard.work.domain.receiver.AccessTokenReceiver; |
| | | import com.ard.work.service.IArdServerInfoService; |
| | | import com.dtflys.forest.exceptions.ForestRuntimeException; |
| | | import com.dtflys.forest.http.ForestRequest; |
| | | import com.dtflys.forest.http.ForestResponse; |
| | | import com.dtflys.forest.interceptor.ForestInterceptor; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.stereotype.Component; |
| | | |
| | | import javax.annotation.Resource; |
| | | |
| | | @Component |
| | |
| | | public boolean beforeExecute(ForestRequest req) { |
| | | try { |
| | | String serverId = (String) req.getVariableValue("serverId"); |
| | | AccessTokenReceiver accessToken = ardServerService.getAccessToken(serverId); |
| | | if (accessToken == null) { |
| | | log.warn("AccessToken 为 null, serverId={}", serverId); |
| | | AccessTokenReceiver token = ardServerService.getAccessToken(serverId); |
| | | if (token == null) { |
| | | return false; // 阻止请求继续 |
| | | } |
| | | req.addHeader("x-cid", accessToken.getCompanyId()); |
| | | req.addHeader("x-token", accessToken.getAccessToken()); |
| | | } catch (Exception e) { |
| | | log.error("TokenInterceptor 处理异常:{}", e.getMessage()); |
| | | req.addHeader("x-cid", token.getCompanyId()); |
| | | req.addHeader("x-token", token.getAccessToken()); |
| | | } catch (ForestRuntimeException e) { |
| | | log.error("拦截器处理异常:{}", e.getMessage()); |
| | | return false; |
| | | } |
| | | return true; |