Skip to content

Commit caa7500

Browse files
committed
fix:【framework 框架】兼容 SpringBoot 2.X 版本的 API 加解密
1 parent 2573a98 commit caa7500

File tree

1 file changed

+7
-0
lines changed
  • yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/encrypt/core/filter

1 file changed

+7
-0
lines changed

yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/encrypt/core/filter/ApiEncryptFilter.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import org.springframework.web.method.HandlerMethod;
2424
import org.springframework.web.servlet.HandlerExecutionChain;
2525
import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping;
26+
import org.springframework.web.util.ServletRequestPathUtils;
2627

2728
import java.io.IOException;
2829

@@ -131,6 +132,12 @@ protected void doFilterInternal(HttpServletRequest request, HttpServletResponse
131132
@SuppressWarnings("PatternVariableCanBeUsed")
132133
private ApiEncrypt getApiEncrypt(HttpServletRequest request) {
133134
try {
135+
// 特殊:兼容 SpringBoot 2.X 版本会报错的问题 https://t.zsxq.com/kqyiB
136+
if (!ServletRequestPathUtils.hasParsedRequestPath(request)) {
137+
ServletRequestPathUtils.parseAndCache(request);
138+
}
139+
140+
// 解析 @ApiEncrypt 注解
134141
HandlerExecutionChain mappingHandler = requestMappingHandlerMapping.getHandler(request);
135142
if (mappingHandler == null) {
136143
return null;

0 commit comments

Comments
 (0)