WebHooksService.java 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. package com.caimei.service.aopservice;
  2. import com.alibaba.fastjson.JSONObject;
  3. import com.caimei.annotation.WebHooks;
  4. import org.aspectj.lang.JoinPoint;
  5. import org.aspectj.lang.annotation.Aspect;
  6. import org.aspectj.lang.annotation.Before;
  7. import org.aspectj.lang.annotation.Pointcut;
  8. import org.springframework.stereotype.Component;
  9. /**
  10. *
  11. * 用于监听webhook事件(抖音授权,发布视频,解除授权)
  12. */
  13. @Aspect
  14. @Component
  15. public class WebHooksService {
  16. /**
  17. * 层切点
  18. */
  19. @Pointcut("@annotation(webHooks)")
  20. public void controllerAspect(WebHooks webHooks) {
  21. }
  22. @Before("controllerAspect(webHooks)")
  23. public void After(JoinPoint pjp, WebHooks webHooks) {
  24. String body = null;
  25. Object[] arguments = pjp.getArgs();
  26. if(arguments.length!=0){
  27. try {
  28. body = arguments[0].toString();
  29. System.out.println(body);
  30. JSONObject jsonObject=JSONObject.parseObject(body);
  31. String contnet=jsonObject.getString("content");
  32. System.out.println(contnet);
  33. JSONObject contnetlist=JSONObject.parseObject(contnet);
  34. String challenge=contnetlist.getString("challenge");
  35. System.out.println(challenge);
  36. String itemId=contnetlist.getString("item_id");
  37. System.out.println(itemId);
  38. String shareId=contnetlist.getString("share_id");
  39. System.out.println(shareId);
  40. //获取itemid和shareid进行保存
  41. }catch (Exception ex){
  42. ex.printStackTrace();
  43. }
  44. }
  45. }
  46. }