SignInterceptor.java 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. package com.fdkankan.manage.httpClient;
  2. import com.alibaba.fastjson.JSONObject;
  3. import com.dtflys.forest.http.ForestRequest;
  4. import com.dtflys.forest.interceptor.Interceptor;
  5. import com.dtflys.forest.reflection.ForestMethod;
  6. import com.fdkankan.manage.config.ManageConfig;
  7. import com.fdkankan.sign.RsaUtils;
  8. import lombok.extern.slf4j.Slf4j;
  9. import org.springframework.beans.factory.annotation.Autowired;
  10. import org.springframework.beans.factory.annotation.Value;
  11. import org.springframework.stereotype.Component;
  12. import java.time.Instant;
  13. import java.util.Date;
  14. @Component
  15. @Slf4j
  16. public class SignInterceptor implements Interceptor<JSONObject> {
  17. @Autowired
  18. ManageConfig manageConfig;
  19. @Override
  20. public void onInvokeMethod(ForestRequest request, ForestMethod method, Object[] args) {
  21. JSONObject playload = new JSONObject();
  22. playload.put("appId", manageConfig.getAppid());
  23. playload.put("timestamp", new Date().getTime());
  24. request.addHeader("sign", RsaUtils.encipher(playload.toJSONString(),manageConfig.getPublicKey()));
  25. request.addHeader("appId", manageConfig.getAppid());
  26. }
  27. }