Compare commits

..

2 Commits

Author SHA1 Message Date
qaiu
7bb3cf7c51 Update README.md 2026-05-17 21:59:19 +08:00
qaiu
2ce5058be0 Add professional version cloud storage options 2026-05-17 21:57:39 +08:00
2 changed files with 22 additions and 18 deletions

View File

@@ -93,6 +93,13 @@ https://nfd-parser.github.io/nfd-preview/preview.html?src=https%3A%2F%2Flz.qaiu.
- Onedrive-pod - Onedrive-pod
- Dropbox-pdp - Dropbox-pdp
- iCloud-pic - iCloud-pic
### 专业版提供
- 迅雷网盘-xl
- [夸克云盘-qk](https://pan.quark.cn/)
- [UC云盘-uc](https://fast.uc.cn/)
- [移动云盘-p139](https://yun.139.com/)
- [联通云盘-pwo](https://pan.wo.cn/)
- [天翼云盘-p189](https://cloud.189.cn/)
## API接口 ## API接口

View File

@@ -37,9 +37,6 @@ public class WsTool extends PanBase {
MultiMap headers = MultiMap.caseInsensitiveMultiMap(); MultiMap headers = MultiMap.caseInsensitiveMultiMap();
headers.set("User-Agent", userAgent2); headers.set("User-Agent", userAgent2);
headers.set("Accept", "application/json, text/plain, */*");
headers.set("Content-Type", "application/json;charset=utf-8");
headers.set("Prod", "com.wenshushu.web.pc");
headers.set("sec-ch-ua-platform", "Android"); headers.set("sec-ch-ua-platform", "Android");
headers.set("Accept-Language", "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2"); headers.set("Accept-Language", "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2");
headers.set("sec-ch-ua-mobile", "sec-ch-ua-mobile"); headers.set("sec-ch-ua-mobile", "sec-ch-ua-mobile");
@@ -53,7 +50,7 @@ public class WsTool extends PanBase {
try { try {
// 设置匿名登录token // 设置匿名登录token
String token = asJson(res).getJsonObject("data").getString("token"); String token = asJson(res).getJsonObject("data").getString("token");
headers.set("X-TOKEN", token); headers.set("X-Token", token);
// 获取文件夹信息 // 获取文件夹信息
httpClient.postAbs(SHARE_URL_API + "task/mgrtask").putHeaders(headers) httpClient.postAbs(SHARE_URL_API + "task/mgrtask").putHeaders(headers)
@@ -71,10 +68,10 @@ public class WsTool extends PanBase {
String filebid = asJson(res2).getJsonObject("data").getString("boxid"); // 文件夹bid String filebid = asJson(res2).getJsonObject("data").getString("boxid"); // 文件夹bid
// 调试输出文件夹信息 // 调试输出文件夹信息
log.debug("文件夹期限: {}", filetime); System.out.println("文件夹期限: " + filetime);
log.debug("文件夹大小: {}", filesize); System.out.println("文件夹大小: " + filesize);
log.debug("文件夹pid: {}", filepid); System.out.println("文件夹pid: " + filepid);
log.debug("文件夹bid: {}", filebid); System.out.println("文件夹bid: " + filebid);
// 获取文件信息 // 获取文件信息
httpClient.postAbs(SHARE_URL_API + "ufile/list").putHeaders(headers) httpClient.postAbs(SHARE_URL_API + "ufile/list").putHeaders(headers)
@@ -95,21 +92,21 @@ public class WsTool extends PanBase {
if (res3.statusCode() == 200) { if (res3.statusCode() == 200) {
try { try {
// 获取文件信息 // 获取文件信息
JsonObject fileInfo = asJson(res3).getJsonObject("data") String filename = asJson(res3).getJsonObject("data")
.getJsonArray("fileList").getJsonObject(0); .getJsonArray("fileList").getJsonObject(0).getString("fname"); // 文件名称
String filename = fileInfo.getString("fname"); // 文件名称 String filefid = asJson(res3).getJsonObject("data")
String fileUfileid = fileInfo.getString("ufileid", fileInfo.getString("fid")); // 文件ufileid .getJsonArray("fileList").getJsonObject(0).getString("fid"); // 文件fid
// 调试输出文件信息 // 调试输出文件信息
log.debug("文件名称: {}", filename); System.out.println("文件名称: " + filename);
log.debug("文件ufileid: {}", fileUfileid); System.out.println("文件fid: " + filefid);
// 检查文件是否失效 // 检查文件是否失效
httpClient.postAbs(SHARE_URL_API + "dl/sign").putHeaders(headers) httpClient.postAbs(SHARE_URL_API + "dl/sign").putHeaders(headers)
.sendJsonObject(JsonObject.of( .sendJsonObject(JsonObject.of(
"ufileid", fileUfileid, "consumeCode", 0,
// 新版接口不再需要consumeCode "type", 1,
"type", 1 "ufileid", filefid
)).onSuccess(res4 -> { )).onSuccess(res4 -> {
if (res4.statusCode() == 200) { if (res4.statusCode() == 200) {
@@ -118,7 +115,7 @@ public class WsTool extends PanBase {
String fileurl = asJson(res4).getJsonObject("data").getString("url"); String fileurl = asJson(res4).getJsonObject("data").getString("url");
// 调试输出文件直链 // 调试输出文件直链
log.debug("文件直链: {}", fileurl); System.out.println("文件直链: " + fileurl);
if (!fileurl.equals("")) { if (!fileurl.equals("")) {
promise.complete(URLDecoder.decode(fileurl, StandardCharsets.UTF_8)); promise.complete(URLDecoder.decode(fileurl, StandardCharsets.UTF_8));