diff --git a/app/src/main/java/com/github/catvod/api/AliYun.java b/app/src/main/java/com/github/catvod/api/AliYun.java index c0664bef..2aa68103 100644 --- a/app/src/main/java/com/github/catvod/api/AliYun.java +++ b/app/src/main/java/com/github/catvod/api/AliYun.java @@ -153,7 +153,8 @@ public class AliYun { url = url.startsWith("https") ? url : "https://api.aliyundrive.com/" + url; OkResult result = OkHttp.postJson(url, json, getHeaderAuth()); SpiderDebug.log(result.getCode() + "," + url + "," + result.getBody()); - if (retry && (result.getCode() == 400 || result.getCode() == 401) && refreshAccessToken()) return auth(url, json, false); + if (retry && result.getCode() == 400 && refreshShareToken()) return auth(url, json, false); + if (retry && result.getCode() == 401 && refreshAccessToken()) return auth(url, json, false); if (retry && result.getCode() == 429) return auth(url, json, false); return result.getBody(); } @@ -178,7 +179,7 @@ public class AliYun { return false; } - private void refreshShareToken() { + private boolean refreshShareToken() { SpiderDebug.log("refreshShareToken..."); JsonObject param = new JsonObject(); param.addProperty("share_id", shareId); @@ -186,6 +187,7 @@ public class AliYun { String json = post("v2/share_link/get_share_token", param); shareToken = Share.objectFrom(json).getShareToken(); if (shareToken.isEmpty()) Utils.notify("來晚啦,該分享已失效。"); + return shareToken.length() > 0; } private boolean refreshAccessToken() { diff --git a/jar/custom_spider.jar b/jar/custom_spider.jar index 2806e779..fdea0397 100644 Binary files a/jar/custom_spider.jar and b/jar/custom_spider.jar differ diff --git a/jar/custom_spider.jar.md5 b/jar/custom_spider.jar.md5 index 04b8f6bc..905d0cc4 100644 --- a/jar/custom_spider.jar.md5 +++ b/jar/custom_spider.jar.md5 @@ -1 +1 @@ -30fd1651e2c4f539d0b702eed0bb8e3f +22b3579498649b93fdfa3aab84792568