Greasy Fork is available in English.

仓库用度盘投稿助手

简易功能增强, 方便仓库投稿用

< Feedback on 仓库用度盘投稿助手

Review: OK - script works, but has bugs

§
Posted: 03-08-2021
Edited: 03-08-2021

关于完善秒传转存功能

1.使用常规秒传接口/api/rapidupload, 部分文件的md5的大小写会影响转存结果:
分为三种情况: 全大写/全小写/随机大小写 (slice-md5不需要处理)
测试实例:
4144bcfb491344f9ba58e1047fc80433#7ab86bc540bd643b795960450e8a57a3#185822989#test
* 仅随机大小写可转存, 也存在仅全大写/全小写可转存的文件, 这里不全部列举

2.使用以下接口可以转存大部分常规接口报错404(未识别md5)的秒传:
url: /rest/2.0/xpan/file?method=precreate,
data: {
block_list: ["file_md5"],
path: path,
size: file_size,
isdir: 0,
autoinit: 1
}
# 预上传, 若接口返回block_list: [](block_list为空), 则md5有效, 同时可获取到uploadid

url: /rest/2.0/xpan/file?method=create,
data: {
block_list: ["file_md5"],
uploadid: uploadid,
path: path,
size: file_size,
isdir: 0,
rtype: 0
}
# 创建文件, 若接口返回errno: 2则秒传无效(不识别md5)
# 测试实例:
使用度盘网页端随意上传一个大一点(100M以上)的文件, 然后直接测试
* 仅新接口可转存, 常规接口转存404, 3-5天后常规接口可转存
46f673583ee3c053b92fe671ca25deba#f9b99c962c36584204c098202167e056#34188551#test2
* 两个接口均失败, 新接口预上传返回block_list不为空, 常规接口返回404
2d9a55b7d5fe70e74ce8c3b2be8f8e43#c34ced198e75d78df7d17b16f9a59c2d#1053901561#test3
* 两个接口均失败, 新接口预上传返回block_list为空, 但创建文件返回errno: 2, 常规接口返回404

PS:
# 建议转存时先调用常规接口, 若404再使用新接口
# 转存逻辑参考实例(JS): 秒传链接提取 -> line881

Jixun.MoeAuthor
§
Posted: 03-08-2021

暂时没时间,过段时间看看怎么操作…

Post reply

Sign in to post a reply.