多文件压缩

更新时间:2025-08-18 15:32:51

此接口提供云存储平台上指定多个文件的打包压缩功能。目前仅支持ZIP压缩。

请求描述

POST /fmgr/compress
Host: <MgrDomain>
Authorization: <accessToken>

请求头描述

参数 必须 描述
HOST 管理域名,可在控制台空间概览界面获取。
Authorization 管理凭证

参数描述

请求参数按以下格式组织,并作为请求内容提交:

fops=bucket/<Urlsafe_Base64_Encoded_Bucket>/keys/<Urlsafe_Base64_Encoded_key1|Urlsafe_Base64_Encoded_key2|Urlsafe_Base64_Encoded_key3|……>/keyList/<Urlsafe_Base64_Encoded_keyList>/saveas/<Urlsafe_Base64_Encoded(<bucket:filekey>)>&notifyURL=<Urlsafe_Base64_Encoded_notifyUrl>&separate=<Separate>&force=<Force>
参数 必须 描述
fops 处理参数列表,格式如上说明,支持同时进行多项处理请求,参数列表用分号 ; 分隔。
bucket 待压缩文件所在存储空间。<Urlsafe_Base64_Encoded_bucket> 是指定bucket名称的URL安全Base64编码字符串。
keys 待压缩的文件或目录,资源之间用 ¦ 分隔。
注意:
1. 如果存在keyList参数,此参数可为空。
2. 以 / 结尾表示 key 值为目录。
keyList 待压缩的文件或目录信息的索引文件路径。当需压缩大量文件或目录时,可将待压缩的信息逐行写入索引文件(无需URL编码),并将该索引文件上传到空间中。通过指定索引文件的路径,可实现对索引文件内容指定的文件和目录进行压缩。
注意:如果存在keys参数,此参数可为空。
saveas 输出文件保存路径。参数需填写“空间:文件名”的URL安全Base64编码值。
notifyURL 处理结果通知接收的URL。通知内容格式可参见任务查询接口的返回内容。
separate 处理指令是否单独通知。
设置1和0作为选项码:
1:表示每个命令执行完毕即通知notifyURL。
0:表示所有命令执行完之后通知notifyURL一次。默认值是0。
force 是否强制处理。
1:强制数据处理,覆盖原结果。
0:如果数据处理结果已存在,则认为处理成功,避免重复处理浪费资源。默认值为0。

注意

  1. 同时填写 keys 和 keyList 参数,以 keys 参数为准。
  2. 如果待压缩文件或目录的指定部分不存在或目录为空,则忽略该文件或目录的压缩;如指定待压缩文件不存在,压缩失败。
  3. keyList 索引文件内容格式规范:一行一个(无需URI编码)(UTF-8编码)
    例如,空间内存在test/keyList.txt,文件有如下内容:
1.jpg
dir1/
2.jpg
test.jpg
……
指定的 keyList 为 test/keyList.txt,则表示对“1.jpg、dir1/、2.jpg、test.jpg、……”进行压缩
  1. 压缩后保留原始目录结构。例如:有一个目录test/test1/,在test1目录下有test2(空目录)和1.jpg、test3目录(存在2.jpg文件),并指定对目录test/test1/进行压缩到a.zip中。a.zip解压后其目录结构如下:
test(目录)
|---test1(目录)
    |---1.jpg(文件)
    |---test3(目录)
        |---2.jpg(文件)
  1. 如果待压缩的文件数量超过3000,或者待压缩的文件总存储量超过50G,压缩任务会失败。

响应描述

  • 如果请求成功,将返回一个包含以下内容的Json字符串:
{ "persistentId": <persistentId> }
字段名称 必须 描述
persistentId 任务进程ID,可以用于查询任务进度。
  • 如果请求失败,将返回一个包含以下内容的Json字符串:
{
    "code":     "<code string>",
    "message":  "<ErrMsg string>"
}
字段名称 必须 描述
code HTTP请求响应代码,参见 HTTP响应状态码
message 请求失败的消息

示例

curl -v -X POST -d "fops=bucket/bXlidWNrZXQ=/keys/MS5qcGc=|Mi5qcGc=|My5qcGc=/saveas/bXlidWNrZXQyOjEuemlw;bucket/bXlidWNrZXQ=/keyList/dGVzdC9jb21wcmVzcy50eHQ=/saveas/bXlidWNrZXQyOjIuemlw&notifyURL=aHR0cDovL3Rlc3QuY29tL25vdGlmeVVSbA==&separate=1&force=0" -H "Authorization:86622e227a50d49d858c2494a935bc2e4ac543a7:Y2JmMGY0YTNhZmQxZmVlZGM2ZTA0YTdjNTcyOWQ1NjRkNTExYjg0Yg==" --url "http://mgrDomain/fmgr/compress"
本篇文档内容对您是否有帮助?
有帮助
我要反馈
提交成功!非常感谢您的反馈,我们会继续努力做到更好!