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 86392817..e227b708 100644 --- a/app/src/main/java/com/github/catvod/api/AliYun.java +++ b/app/src/main/java/com/github/catvod/api/AliYun.java @@ -106,6 +106,13 @@ public class AliYun { return headers; } + private HashMap getHeaders() { + HashMap headers = getHeader(); + headers.put("x-share-token", share.getShareToken()); + headers.put("X-Canary", "client=Android,app=adrive,version=v4.3.1"); + return headers; + } + private HashMap getHeaderAuth() { HashMap headers = getHeader(); headers.put("x-share-token", share.getShareToken()); @@ -138,7 +145,12 @@ public class AliYun { private String auth(String url, String json, boolean retry) { url = url.startsWith("https") ? url : "https://api.aliyundrive.com/" + url; - OkResult result = OkHttp.post(url, json, getHeaderAuth()); + OkResult result; + if (url.contains("file/list")) { + result = OkHttp.post(url, json, getHeaders()); + } else { + result = OkHttp.post(url, json, getHeaderAuth()); + } SpiderDebug.log(result.getCode() + "," + url + "," + result.getBody()); if (retry && result.getCode() == 401 && refreshAccessToken()) return auth(url, json, false); if (retry && result.getCode() == 429) return auth(url, json, false); diff --git a/jar/custom_spider.jar b/jar/custom_spider.jar index 4080ef98..71556a89 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 198434aa..f68a2fc4 100644 --- a/jar/custom_spider.jar.md5 +++ b/jar/custom_spider.jar.md5 @@ -1 +1 @@ -2b4bff50bb61acef1e8f8654d9822f63 +7d 13 87 8c 01 ea 65 5d 71 6f d1 aa 39 b0 09 4e