From 4a0fe61d3069f2931ad575f3a1bcc9f37630fc73 Mon Sep 17 00:00:00 2001 From: yukaidi Date: Fri, 29 May 2026 10:13:22 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20ParserCreate=20=E6=AD=A3=E5=88=99?= =?UTF-8?q?=E5=8C=B9=E9=85=8D=20PWD=20=E7=BB=84=E6=97=B6=E6=8D=95=E8=8E=B7?= =?UTF-8?q?=20IllegalArgumentException?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit matcher.group(PWD) 在正则未定义 PWD 命名组时抛出 IllegalArgumentException 而非 IllegalStateException,原 catch 未覆盖 导致无提取码的链接(如QQ文件分享)返回 500。 --- parser/src/main/java/cn/qaiu/parser/ParserCreate.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/parser/src/main/java/cn/qaiu/parser/ParserCreate.java b/parser/src/main/java/cn/qaiu/parser/ParserCreate.java index b1b630a..2b743f7 100644 --- a/parser/src/main/java/cn/qaiu/parser/ParserCreate.java +++ b/parser/src/main/java/cn/qaiu/parser/ParserCreate.java @@ -81,7 +81,7 @@ public class ParserCreate { if (shareKey != null) { shareLinkInfo.setShareKey(shareKey); } - } catch (IllegalStateException ignored) {} + } catch (IllegalStateException | IllegalArgumentException ignored) {} // 提取密码 try { @@ -89,7 +89,7 @@ public class ParserCreate { if (StringUtils.isNotEmpty(pwd)) { shareLinkInfo.setSharePassword(pwd); } - } catch (IllegalStateException ignored) {} + } catch (IllegalStateException | IllegalArgumentException ignored) {} // 设置标准URL if (customParserConfig.getStandardUrlTemplate() != null) { @@ -133,7 +133,7 @@ public class ParserCreate { shareLinkInfo.setSharePassword(pwd); } standardUrl = standardUrl.replace("{pwd}", pwd); - } catch (IllegalStateException ignored) {} + } catch (IllegalStateException | IllegalArgumentException ignored) {} shareLinkInfo.setShareUrl(shareUrl); shareLinkInfo.setShareKey(shareKey); @@ -266,14 +266,14 @@ public class ParserCreate { if (shareKey != null) { shareLinkInfo.setShareKey(shareKey); } - } catch (IllegalStateException ignored) {} + } catch (IllegalStateException | IllegalArgumentException ignored) {} try { String password = matcher.group("PWD"); if (password != null) { shareLinkInfo.setSharePassword(password); } - } catch (IllegalStateException ignored) {} + } catch (IllegalStateException | IllegalArgumentException ignored) {} // 设置标准URL(如果有模板) if (customConfig.getStandardUrlTemplate() != null) {