Skip to content

Media and Storage

Codex edited this page Oct 18, 2026 · 4 revisions

媒体、封面与缓存

每次选择上传文件或目录,都显式选择明文或加密;取消选择即取消本次上传。 加密媒体由浏览器分块 AES-GCM 处理,Storage 保存密文,Master 管理权限和小密钥信封。 服务器不解密普通媒体,也不进行音视频转码。格式转换模块已移除。

封面

目录和大封面保留原图。可见队列逐首按需读取标签,连续播放切歌也更新活动曲目的标签。 只有播放器 50 CSS 像素小图采用尽力生成的缩略图:最长边不超过 96 物理像素, 不放大,WebP 质量 0.85;失败保留音符占位,不用原图下载兜底。 工作受可见性、播放缓冲和浏览器空闲时间约束,不得阻塞第一首或连续播放。

缓存 位置与刷新边界
版本化 Logo 浏览器 HTTP 缓存一年,仍可能被浏览器清理
明文封面 私有 HTTP 缓存五分钟,ETag 重验可返回 304
解密标签、封面、小图 页面内存,退出页面释放,不持久化明文或密钥
加密分块 服务工作线程内存,最多 32 MiB、五分钟;线程重启丢失

密文缓存每次复用仍需当前授权并验证 GCM。刷新可能复用仍存活的缓存, 不能保证重启浏览器后加密封面不重下。改文件、隐藏或删除不能被旧缓存绕过。

上传和下载

刷新、关闭、断网会取消本页传输,队列不在重连后偷偷恢复。浏览器清理只是尽力操作。 服务端根据真实租约、完整对象回执和事务日志回收孤立暂存;30 分钟到期只触发调查, 不是删除许可。离线、未知字节、活跃传输和未完成发布继续保留并阻断不安全操作。 完整文件若丢失确认回复,校验后补齐登记,不能误删。

加密/混合下载在浏览器解密和生成 ZIP;中断不承诺刷新页面后跨会话续传。 原始文件和业务变更使用托管 API,不能通过直接删文件或 SQL 清理来绕过冲突。

详见封面、加密、 上传生命周期。

Clone this wiki locally