From 5a08ed68c260e7f5ee78aee6f8942c580f430097 Mon Sep 17 00:00:00 2001 From: yukaidi Date: Fri, 29 May 2026 02:47:27 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20IzTool=20=E5=B9=B6=E5=8F=91=E5=AE=89?= =?UTF-8?q?=E5=85=A8=20-=20token/authFlag=20=E6=94=B9=E4=B8=BA=20volatile?= =?UTF-8?q?=EF=BC=8Cheader=20=E5=89=AF=E6=9C=AC=E6=9B=BF=E4=BB=A3=E5=85=B1?= =?UTF-8?q?=E4=BA=AB=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/cn/qaiu/parser/impl/IzTool.java | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/parser/src/main/java/cn/qaiu/parser/impl/IzTool.java b/parser/src/main/java/cn/qaiu/parser/impl/IzTool.java index f3ad28e..044b7e8 100644 --- a/parser/src/main/java/cn/qaiu/parser/impl/IzTool.java +++ b/parser/src/main/java/cn/qaiu/parser/impl/IzTool.java @@ -89,8 +89,8 @@ public class IzTool extends PanBase { String uuid = UUID.randomUUID().toString().toLowerCase(); // 也可以使用 UUID.randomUUID().toString() - public static String token = null; - public static boolean authFlag = true; + public static volatile String token = null; + public static volatile boolean authFlag = true; public Future parse() { @@ -247,7 +247,7 @@ public class IzTool extends PanBase { log.warn("登录失败: {}", failRes.getMessage()); fail(failRes.getMessage()); }).onSuccess(r-> { - httpRequest.setTemplateParam("appToken", header.get("appToken")) + httpRequest.setTemplateParam("appToken", token) .putHeaders(header); httpRequest.send().onSuccess(this::down).onFailure(handleFail("请求2")); }); @@ -263,12 +263,12 @@ public class IzTool extends PanBase { log.warn("重新登录失败: {}", failRes.getMessage()); fail(failRes.getMessage()); }).onSuccess(r-> { - httpRequest.setTemplateParam("appToken", header.get("appToken")) + httpRequest.setTemplateParam("appToken", token) .putHeaders(header); httpRequest.send().onSuccess(this::down).onFailure(handleFail("请求2")); }); } else { - httpRequest.setTemplateParam("appToken", header.get("appToken")) + httpRequest.setTemplateParam("appToken", token) .putHeaders(header); httpRequest.send().onSuccess(this::down).onFailure(handleFail("请求2")); } @@ -311,7 +311,9 @@ public class IzTool extends PanBase { JsonObject json = asJson(res2); if (json.getInteger("code") == 200) { token = json.getJsonObject("data").getString("appToken"); - header.set("appToken", token); + MultiMap h = MultiMap.caseInsensitiveMultiMap(); + h.addAll(header); + h.set("appToken", token); log.info("登录成功 token: {}...", token.substring(0, Math.min(8, token.length()))); promise1.complete(); } else {