From c79b1ebed5a42a4cbb2f824232da2a51ff22a9a1 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期六, 04 十二月 2021 18:25:08 +0800 Subject: [PATCH] 功能完善 --- app/src/main/java/com/yeshi/location/app/aop/SignValidate.java | 57 +++++++++++++++++++++++++++++++++------------------------ 1 files changed, 33 insertions(+), 24 deletions(-) diff --git a/app/src/main/java/com/yeshi/location/app/aop/SignValidate.java b/app/src/main/java/com/yeshi/location/app/aop/SignValidate.java index b8c9f6b..03797d9 100644 --- a/app/src/main/java/com/yeshi/location/app/aop/SignValidate.java +++ b/app/src/main/java/com/yeshi/location/app/aop/SignValidate.java @@ -1,12 +1,10 @@ package com.yeshi.location.app.aop; -import com.yeshi.location.app.entity.APPPlatform; import com.yeshi.location.app.entity.config.SystemConfigKey; import com.yeshi.location.app.service.inter.config.SystemConfigService; import com.yeshi.location.app.utils.ApiCodeConstant; import com.yeshi.location.app.utils.SystemInfoUtil; import com.yeshi.location.app.vo.AcceptData; -import net.sf.json.JSONObject; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lang.annotation.Around; import org.aspectj.lang.annotation.Aspect; @@ -27,30 +25,43 @@ @Aspect @Order(2) public class SignValidate { -c - private String getHttpServletParams(HttpServletRequest request) { - if (request == null) { - return ""; - } - Map map = request.getParameterMap(); - if (map != null) { - Iterator<String> its = map.keySet().iterator(); - JSONObject json = new JSONObject(); - while (its.hasNext()) { - String next = its.next(); - if (map.get(next) != null) { - Object[] objects = (Object[]) map.get(next); - if (objects != null && objects.length > 0) { - json.put(next, objects[0].toString()); - } - } + public static final String EDP = "execution(* com.yeshi.location.app.controller.client..*.*(..))"; + + @Resource + private SystemConfigService systemConfigService; + + @Around(EDP) + public Object around(ProceedingJoinPoint joinPoint) throws Throwable { + + Object[] args = joinPoint.getArgs(); + ServletRequestAttributes servletContainer = (ServletRequestAttributes) RequestContextHolder + .getRequestAttributes(); + PrintWriter out = null;//servletContainer.getResponse().getWriter(); + AcceptData acceptData = null; + for (Object obj : args) { + if (obj instanceof AcceptData) { + acceptData = (AcceptData) obj; + break; } - return json.toString(); } - return ""; - } + if (acceptData != null) { + acceptData.setSystem(SystemInfoUtil.getSystem(acceptData.getPlatform(), acceptData.getPackages())); + } + + boolean signIsRight = true;//signIsRight(servletContainer.getRequest(), acceptData); + if (!signIsRight) { + return (JsonUtil.loadFalseResult(ApiCodeConstant.CODE_FAIL_SIGN_ERROR, "绛惧悕閿欒")); + } + + if (Math.abs((acceptData.getTimestamp() - System.currentTimeMillis())) > 1000 * 60 * 10) { + out.print(JsonUtil.loadFalseResult(ApiCodeConstant.CODE_FAIL_OUT_TIME, "鏃堕棿閿欒")); + return null; + } + + return joinPoint.proceed(); + } /** * 鍒ゆ柇绛惧悕鐨勬纭�� Android version>50 @@ -84,6 +95,4 @@ return false; } } - - } -- Gitblit v1.8.0