Appearance
能力清单
SDK 版本演进:v0.1 交付框架无关 core + Vue 适配层;v0.2(2026-09-04 发布) 分两个批次补齐生态面。
core:客户端协议完整实现(v0.1)
- 分片上传(两层并发):块级并发 + 任务级调度;
- SHA-256 秒传去重:hash 计算在 Web Worker 卸载,主线程自动降级;同 hash 二次上传零字节传输(秒传);
- 断点续传:页面刷新/崩溃后自动探测已传分片(ListParts 为唯一真相源),仅补缺失部分;
- complete 超时轮询降级链 +
missingParts补传:网络抖动下的自愈路径; - 共享执行体多任务模型:同 hash 任务共享一次物理上传,abort 整组生效;
- 状态机:
uploading → completed(无扫描)|uploading → scanning → completed | quarantined(启用扫描)。
v0.2 批次 A:适配与传输控制(六项)
| 能力 | 说明 |
|---|---|
| React 18+ 适配层 | useSyncExternalStore 实现,SSR 就绪,hooks API 与 Vue 侧对齐 |
智能预签名水位线(urlWaterline: 'auto') | 重签阈值随网络自适应(快 20s / 中 45s / 慢 90s;navigator.connection 不可用降级 60s) |
上传限速(speedLimit) | 任务级字节速率精准控制,按固定并发均分,abort 安全 |
| 手动暂停/恢复 | pause / resume / pauseAll / resumeAll——软停止保留服务端分片(不发 DELETE),恢复仅补缺失分片 |
同文件去重(allowDuplicate: true) | 重复选择独立上传排队串行,命中秒传 |
| 订阅协议 | 任务状态变更的可订阅事件面 |
v0.2 批次 B:组件层与可演示闭环
@pidaqing/uploader/components:<PartakeUploader>拖拽区 + 任务列表 + 操作栏整件;<PartakeDropZone>/<PartakeTaskList>原子组件自由拼装;- 零 UI 库依赖:CSS 变量主题(
--partake-*token),labels 文案深合并定制(DeepPartial任意层级覆写); - Vite playground(仓库
playground/):Vue / React 双入口 + 内存 mock 控制面,一条命令演示秒传 / 续传 / 限速 / 暂停恢复 / EICAR 隔离全能力(React 入口以 hooks API 自组行 UI——组件层 React 版在 v1.0 前不做,属刻意收窄)。
明确不做(当前版本边界)
- 实时音视频流上传(不属本 SDK 定位);
- 文件夹级增量同步;
- 组件层 React 版(v1.0 前不做);
- IndexedDB 本地加速层(设计评估结论延后 v0.3+——价值场景已收窄,待组件层 API 稳定后单独成轮)。