功能描述
用于重命名或移动文件。
说明:
要求权限:admin、space_admin 或 move_file/move_file_force。有关权限详情请参见 生成访问令牌接口。
该接口的源和目标均需要指定完整的文件路径,源与目标可以跨越目录,来实现将文件移动到任意其他目录下的功能,且支持同时修改文件名。
不会自动创建中间所需的各级父目录,所以必须保证路径的各级目录存在。
请求
请求示例
PUT /api/v1/file/{LibraryId}/{SpaceId}/{FilePath}?conflict_resolution_strategy={ConflictResolutionStrategy}&access_token={AccessToken}&user_id={UserId}
请求参数
请求参数 | 描述 | 类型 | 是否必选 |
LibraryId | String | 是 | |
SpaceId | String | 否 | |
FilePath | 完整文件路径,例如 foo/bar2/file.docx | String | 否 |
ConflictResolutionStrategy | 文件名冲突时的处理方式,默认为 rename ask:冲突时返回 HTTP 409 Conflict 及 SameNameDirectoryOrFileExists 错误码 rename:冲突时自动重命名文件 overwrite: 如果目标为目录或相簿时,默认为 ask 且不支持 overwrite 如果目标为文件,覆盖已有文件 当目标空间的文件存在历史版本时,不支持移动覆盖 | String | 否 |
AccessToken | String | 是 | |
UserId | String | 否 |
请求体
application/json,指定被重命名或移动的源文件路径。
请求体示例:
{"from": "foo/bar/file_old.docx"}
请求体字段说明:
请求参数 | 描述 | 类型 | 是否必选 |
from | String | 是 |
响应
响应码
重命名或移动成功,返回 HTTP 200 OK。
响应体
application/json
响应体示例:
{ "path": [ "foo", "bar", "file_new (1).docx" ] }
响应体字段说明:
请求参数 | 描述 | 类型 |
path | 字符串数组 或 null 如果是字符串数组则表示最终的文件路径,数组中的最后一个元素代表最终的文件名,其他元素代表每一级目录名,因为可能存在同名文件自动重命名,所以这里的最终路径可能不等同于移动或重命名时指定的目标路径 如果是 null 则表示目标路径的某级父级目录已被删除,该目标文件已经无法访问 | String |