From 95e2652615e86781a98ba452da7528e43d413cc8 Mon Sep 17 00:00:00 2001 From: xxx Date: Sun, 27 Aug 2023 13:41:21 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A7=BB=E9=99=A4Minio=E7=9A=84pre-sign-url?= =?UTF-8?q?=E7=9A=84=E9=99=90=E6=B5=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/xyz/playedu/common/constant/BackendConstant.java | 7 +++++++ .../xyz/playedu/system/interceptor/AdminInterceptor.java | 7 ++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/playedu-common/src/main/java/xyz/playedu/common/constant/BackendConstant.java b/playedu-common/src/main/java/xyz/playedu/common/constant/BackendConstant.java index 24de46d..c69ad25 100644 --- a/playedu-common/src/main/java/xyz/playedu/common/constant/BackendConstant.java +++ b/playedu-common/src/main/java/xyz/playedu/common/constant/BackendConstant.java @@ -30,6 +30,13 @@ public class BackendConstant { } }; + public static final List API_LIMIT_WHITELIST = + new ArrayList<>() { + { + add("/backend/v1/upload/minio/pre-sign-url"); + } + }; + public static final String RESOURCE_TYPE_VIDEO = "VIDEO"; public static final String RESOURCE_TYPE_IMAGE = "IMAGE"; public static final String RESOURCE_TYPE_PDF = "PDF"; diff --git a/playedu-system/src/main/java/xyz/playedu/system/interceptor/AdminInterceptor.java b/playedu-system/src/main/java/xyz/playedu/system/interceptor/AdminInterceptor.java index e9deec7..0fd2b12 100644 --- a/playedu-system/src/main/java/xyz/playedu/system/interceptor/AdminInterceptor.java +++ b/playedu-system/src/main/java/xyz/playedu/system/interceptor/AdminInterceptor.java @@ -26,6 +26,7 @@ import org.springframework.web.servlet.HandlerInterceptor; import xyz.playedu.common.bus.BackendBus; import xyz.playedu.common.config.PlayEduConfig; +import xyz.playedu.common.constant.BackendConstant; import xyz.playedu.common.context.BCtx; import xyz.playedu.common.domain.AdminUser; import xyz.playedu.common.service.AdminUserService; @@ -59,7 +60,11 @@ public class AdminInterceptor implements HandlerInterceptor { public boolean preHandle( HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { - if ("OPTIONS".equals(request.getMethod())) { + // 当前api的请求路径 + String path = request.getRequestURI(); + // 白名单过滤 + if (BackendConstant.API_LIMIT_WHITELIST.contains(path) + || "OPTIONS".equals(request.getMethod())) { return HandlerInterceptor.super.preHandle(request, response, handler); }