From 60f8bd160d4e4065afe8f597b30992199001349f Mon Sep 17 00:00:00 2001 From: lbw Date: Sat, 18 Mar 2023 15:17:21 +0800 Subject: [PATCH] =?UTF-8?q?:lock:=20=E4=BF=AE=E5=A4=8D=E5=AE=89=E5=85=A8?= =?UTF-8?q?=E9=97=AE=E9=A2=98=20#4755=20=E7=9F=AD=E4=BF=A1=E7=99=BB?= =?UTF-8?q?=E5=BD=95=E9=AA=8C=E8=AF=81=E7=A0=81=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../filter/ValidateCodeGatewayFilter.java | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/pigx-gateway/src/main/java/com/pig4cloud/pigx/gateway/filter/ValidateCodeGatewayFilter.java b/pigx-gateway/src/main/java/com/pig4cloud/pigx/gateway/filter/ValidateCodeGatewayFilter.java index 1b42f2eb8..dc50d4c4f 100644 --- a/pigx-gateway/src/main/java/com/pig4cloud/pigx/gateway/filter/ValidateCodeGatewayFilter.java +++ b/pigx-gateway/src/main/java/com/pig4cloud/pigx/gateway/filter/ValidateCodeGatewayFilter.java @@ -77,11 +77,19 @@ public class ValidateCodeGatewayFilter extends AbstractGatewayFilterFactory { return chain.filter(exchange); } - // 短信登录强制校验验证码 - boolean smsFlag = StrUtil.contains(request.getQueryParams().getFirst(SecurityConstants.GRANT_MOBILE), - "SMS"); + // mobile模式, 如果请求不包含mobile 参数直接 + String mobile = request.getQueryParams().getFirst(SecurityConstants.GRANT_MOBILE); + if (StrUtil.equals(SecurityConstants.GRANT_MOBILE, grantType) && StrUtil.isBlank(mobile)) { + throw new ValidateCodeException(); + } + + // mobile模式, 社交登录模式不校验验证码直接跳过 + if (StrUtil.equals(SecurityConstants.GRANT_MOBILE, grantType) && !StrUtil.contains(mobile, "SMS")) { + return chain.filter(exchange); + } + // 判断客户端是否跳过检验 - if (!isCheckCaptchaClient(request) && !smsFlag) { + if (!isCheckCaptchaClient(request)) { return chain.filter(exchange); }