WPS 云盘适合用来分发 Quicker 动作需要的大依赖包,例如运行库、命令行工具、字体和模型资源。根据目前的使用体验,下载端无需登录、无需开通会员,也能跑满带宽,并支持大体积文件,适合接入动作的自动下载流程。
核心方法是:保存稳定分享链接,需要下载时再获取临时直链,下载后校验并缓存。
-
准备并上传依赖包
将依赖整理成 ZIP,上传到 WPS 云盘,生成允许下载的分享链接,并核验未登录状态下能否下载。
主程序与稳定依赖尽量分开打包;不同更新频率的资源也可以独立分包。这样更新动作时,用户只需下载发生变化的部分。
-
通过分享链接获取下载地址
当前已验证的请求流程如下:
分享页: https://www.kdocs.cn/view/l/<分享码> 请求: GET https://www.kdocs.cn/api/office/file/<分享码>/download Referer: https://www.kdocs.cn/view/l/<分享码> 解析返回 JSON 顶层的 download_url ↓ GET download_url,下载文件请求不需要携带作者账号的 Cookie 或 Authorization。解析接口和实际文件下载均携带对应分享页的
Referer。这一接口来自当前分享页面的下载行为,接口变化时需要重新核对。
-
长期保存分享链接,临时直链现用现取
download_url通常包含临时签名,可能过期,因此不要把浏览器里复制出的临时下载地址直接写死在动作中。动作应保存稳定分享链接,每次确实需要下载时重新解析。临时直链只用于当次请求,不写入长期配置或日志。
-
校验文件后再解压使用
在动作源码或随动作发布的可信清单中记录依赖的版本、位数、准确字节数和 SHA-256。
下载时先写入
.part临时文件,完成后校验大小与摘要,通过后再解压、安装和发布缓存。如果外层 ZIP 内还包含多个依赖压缩包,应分别校验。不能只凭文件名、HTTP 200 或“文件存在”判断下载成功。
-
优先复用缓存,按需下载
推荐顺序为:
有效本地组件 → 已校验缓存 → WPS 下载 → 已配置的备用来源缓存按内容摘要识别,未变化的依赖继续复用。可选资源在首次使用相关功能时后台准备,避免打开面板就下载全部内容。
下载应支持进度、超时和取消;用户取消后直接结束,清理本次临时文件,不继续切换备用源。
-
更新时同步维护版本信息
发布新版依赖时,同步更新分享来源、版本、文件大小和 SHA-256。未变化的分包保留原来源和缓存。
WPS 不可用时,有真实备用源的组件可以回退;没有备用源的自制资源包,则提供重试、离线导入或本地文件入口。
实际接入时还有一个容易踩的点:不要仅凭 HEAD 请求返回 403 就判定无法下载。 已验证案例中,携带分享页 Referer 的匿名 GET 可以正常取得 ZIP,应以实际 GET 响应和文件校验结果为准。
京公网安备 11010502053266号