服务器 保留、法律保留与导出
保留、法律保留与导出
企业把文件放进网盘之前会提出的三件事:不能过早删除,案件所需的内容要保留,个人可以带走自己的数据。
本页内容
最少保留天数
网盘设置中的 retentionDays(设置 → 存储,限有配置权限的人):创建未满这么多天的内容,任何人或回收站自动清空都不能永久删除。仍可移入回收站并恢复;清空回收站时会保留它,删除时返回 409 retained。
// Nothing deleted for good before seven years, by anyone or by the trash.
await client.saveSettings({ retentionDays: 7 * 365 });
// A case: this folder and all in it out of reach of the trash until released.
await client.hold(folder.id, 'Case 2026-114');
await client.release(folder.id);法律保留
- 在详情中设置保留(限有配置权限的人):在解除之前,它及其中的任何内容都不能被任何人移入回收站或删除。尝试时返回
409 on-hold。 - 仍可上传新版本:之前的版本照常保留。
- 详情会显示谁设置了保留以及原因;动态中有
held和released,并会通知onChange。
某人的全部数据
设置 → 语言 → 下载我的数据会把自己拥有的内容按原位置打包为 .zip,并附上 rebofiles-export.json:其全部条目、与其共享的内容、评论、操作记录和设置。GET /export 返回同样的内容;有配置权限的人可用 ?user= 导出他人的数据。
import { downloadZip } from '@rebofiles/drive';
const exported = await client.exportPerson(); // one's own; another's for who may configure
const { pack, ...rest } = exported;
await downloadZip({ pack: async () => pack, urls: client.urls }, [], {
name: 'my-data',
extra: [{ path: 'rebofiles-export.json', text: JSON.stringify(rest, null, 2) }],
});导出他人的数据时, 导出包含其拥有的内容和操作记录;其文件字节由你的服务器从存储中读取,因为 byRoles 只允许本人下载。