From c0a0d0dc47dfbfcb1a774b7b1f9dc78bc74030d4 Mon Sep 17 00:00:00 2001 From: yukaidi Date: Fri, 29 May 2026 06:37:12 +0800 Subject: [PATCH] =?UTF-8?q?fix(FjTool):=20=E4=BF=AE=E5=A4=8D=20parseById?= =?UTF-8?q?=20=E4=B8=AD=20get("paramJson")=20=E5=8F=AF=E8=83=BD=E5=AF=BC?= =?UTF-8?q?=E8=87=B4=E7=9A=84=20NPE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 当 otherParam 中缺少 "paramJson" 键时,后续 getString 调用会抛出 NPE。 添加 null 检查并提前返回失败。 --- parser/src/main/java/cn/qaiu/parser/impl/FjTool.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/parser/src/main/java/cn/qaiu/parser/impl/FjTool.java b/parser/src/main/java/cn/qaiu/parser/impl/FjTool.java index b46137f..a7d1969 100644 --- a/parser/src/main/java/cn/qaiu/parser/impl/FjTool.java +++ b/parser/src/main/java/cn/qaiu/parser/impl/FjTool.java @@ -581,6 +581,10 @@ public class FjTool extends PanBase { // 第二次请求 JsonObject paramJson = (JsonObject)shareLinkInfo.getOtherParam().get("paramJson"); + if (paramJson == null) { + promise.fail("缺少 paramJson 参数"); + return promise.future(); + } clientNoRedirects.getAbs(UriTemplate.of(SECOND_REQUEST_URL_VIP)) .setTemplateParam("fidEncode", paramJson.getString("fidEncode")) .setTemplateParam("uuid", paramJson.getString("uuid"))