From 190d6bc6aa7e4ca33c281bd9785339f3bddaf11e Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期六, 08 五月 2021 12:43:37 +0800
Subject: [PATCH] bug修复
---
fanli/src/main/java/com/yeshi/fanli/aspect/RequestFrequencyLimitAspect.java | 125 ++++++++++++++++++++---------------------
1 files changed, 62 insertions(+), 63 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/aspect/RequestFrequencyLimitAspect.java b/fanli/src/main/java/com/yeshi/fanli/aspect/RequestFrequencyLimitAspect.java
index 607d62f..8e53118 100644
--- a/fanli/src/main/java/com/yeshi/fanli/aspect/RequestFrequencyLimitAspect.java
+++ b/fanli/src/main/java/com/yeshi/fanli/aspect/RequestFrequencyLimitAspect.java
@@ -1,63 +1,62 @@
-package com.yeshi.fanli.aspect;
-
-import java.io.IOException;
-
-import javax.annotation.Resource;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-import org.aspectj.lang.ProceedingJoinPoint;
-import org.aspectj.lang.annotation.Around;
-import org.aspectj.lang.annotation.Aspect;
-import org.springframework.core.annotation.Order;
-import org.springframework.stereotype.Component;
-import org.springframework.web.context.request.RequestContextHolder;
-import org.springframework.web.context.request.ServletRequestAttributes;
-import org.yeshi.utils.JsonUtil;
-
-import com.yeshi.fanli.log.LogHelper;
-import com.yeshi.fanli.util.Constant;
-import com.yeshi.fanli.util.RedisManager;
-
-//璇锋眰棰戠巼楠岃瘉
-@Component
-@Aspect
-@Order(1)
-public class RequestFrequencyLimitAspect {
- public static final String EDP = "execution(* com.yeshi.fanli.controller.h5.*.*(..)) or execution(* com.yeshi.fanli.controller.web.*.*(..)) or execution(* com.yeshi.fanli.controller.xcx.*.*(..))";
-
- @Resource
- private RedisManager redisManager;
-
- @Around(EDP)
- public Object testAround(ProceedingJoinPoint joinPoint) throws IOException {
- Object[] args = joinPoint.getArgs();
- ServletRequestAttributes servletContainer = (ServletRequestAttributes) RequestContextHolder
- .getRequestAttributes();
- HttpServletRequest request = servletContainer.getRequest();
- HttpServletResponse response = servletContainer.getResponse();
- boolean limit = false;
- if (request != null && response != null) {
- String uri = request.getRequestURI();
- String ip = request.getRemoteHost();
- if (Constant.IS_OUTNET) {
- limit = redisManager.ipFrequencyLimit(ip, uri);
- }
- }
-
- if (limit) {
- LogHelper.error("IP琚檺鍒朵簡");
- response.getWriter().print(JsonUtil.loadFalseResult("璇锋眰杩囧揩"));
- return null;
- }
-
- Object obj = null;
- try {
- obj = joinPoint.proceed(args);
- } catch (Throwable e) {
- e.printStackTrace();
- }
- return obj;
-
- }
-}
+package com.yeshi.fanli.aspect;
+
+import java.io.IOException;
+
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.aspectj.lang.ProceedingJoinPoint;
+import org.aspectj.lang.annotation.Around;
+import org.aspectj.lang.annotation.Aspect;
+import org.springframework.core.annotation.Order;
+import org.springframework.stereotype.Component;
+import org.springframework.web.context.request.RequestContextHolder;
+import org.springframework.web.context.request.ServletRequestAttributes;
+import org.yeshi.utils.JsonUtil;
+
+import com.yeshi.fanli.log.LogHelper;
+import com.yeshi.fanli.util.Constant;
+import com.yeshi.fanli.util.RedisManager;
+
+//璇锋眰棰戠巼楠岃瘉
+@Component
+@Aspect
+@Order(1)
+public class RequestFrequencyLimitAspect {
+ public static final String EDP = "execution(* com.yeshi.fanli.controller.h5.*.*(..)) or execution(* com.yeshi.fanli.controller.web.*.*(..)) or execution(* com.yeshi.fanli.controller.xcx.*.*(..))";
+
+ @Resource
+ private RedisManager redisManager;
+
+ @Around(EDP)
+ public Object testAround(ProceedingJoinPoint joinPoint) throws IOException {
+ Object[] args = joinPoint.getArgs();
+ ServletRequestAttributes servletContainer = (ServletRequestAttributes) RequestContextHolder
+ .getRequestAttributes();
+ HttpServletRequest request = servletContainer.getRequest();
+ HttpServletResponse response = servletContainer.getResponse();
+ boolean limit = false;
+ if (request != null && response != null) {
+ String uri = request.getRequestURI();
+ String ip = request.getRemoteHost();
+ if (Constant.IS_OUTNET) {
+ limit = redisManager.ipFrequencyLimit(ip, uri);
+ }
+ }
+
+ if (limit) {
+ LogHelper.error("IP琚檺鍒朵簡");
+ response.getWriter().print(JsonUtil.loadFalseResult("璇锋眰杩囧揩"));
+ return null;
+ }
+
+ Object obj = null;
+ try {
+ obj = joinPoint.proceed(args);
+ } catch (Throwable e) {
+ e.printStackTrace();
+ }
+ return obj;
+ }
+}
--
Gitblit v1.8.0