创建解压缩任务可以将您压缩包内的指定文件解压缩到特定位置,也可以将压缩包完整解压。目前支持的压缩格式包括Zip、RAR和7z。
接口说明
- 
请确保在使用该接口前,已充分了解智能媒体管理产品的收费方式和价格。 注意 异步任务不保证时效。
- 
文件数量限制:最多支持包含 8 万个文件的压缩包。 
- 
文件大小限制:zip 和 rar 格式最多支持 200 GB,7z 格式最多支持 50 GB。 
- 
文件解压缩任务的处理方式为流式解压,在处理的过程中边解压边输出文件。如果在解压过程中有部分文件损坏导致解压操作中止,已解压生成的文件不会被删除。 
- 
该接口为异步接口,获取任务开始执行后,任务信息只保存 7 天,超过 7 天则无法再获取。调用 GetTask 或 ListTasks 接口获取返回的 TaskId,查看任务信息。也可以通过设置 Notification 消息通知参数,通过消息通知获取任务信息。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
授权信息
下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:
- 操作:是指具体的权限点。
- 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
- 资源类型:是指操作中支持授权的资源类型。具体说明如下:- 对于必选的资源类型,用前面加 * 表示。
- 对于不支持资源级授权的操作,用全部资源表示。
 
- 条件关键字:是指云产品自身定义的条件关键字。
- 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
| 操作 | 访问级别 | 资源类型 | 条件关键字 | 关联操作 | 
|---|---|---|---|---|
| imm:CreateFileUncompressionTask | create | *Project acs:imm:{#regionId}:{#accountId}:project/{#ProjectName} | 
 | 无 | 
请求参数
| 名称 | 类型 | 必填 | 描述 | 示例值 | 
|---|---|---|---|---|
| ProjectName | string | 是 | 项目名称,获取方式请参见创建项目。 | test-project | 
| CredentialConfig | CredentialConfig | 否 | 如无特殊需求,请保持留空即可。 链式授权配置,非必填。更多信息,请参见使用链式授权访问其他实体资源。 | |
| Password | string | 否 | 压缩包加密的密码。 | 123456 | 
| UserData | string | 否 | 用户自定义信息,在异步消息通知中会为您返回,方便您系统内对消息通知进行关联处理。最大长度为 2048 字节。 | test-data | 
| SelectedFiles | array | 否 | 需要解压的文件列表,该参数为空时表示解压整个压缩包。默认为空。 | |
| string | 否 | 需要解压的文件名,相对压缩包根目录的路径值。 | test-dir/test.jpg | |
| SourceURI | string | 是 | 压缩文件存放的 OSS 地址。 OSS 地址规则为 oss://${Bucket}/${Object},其中 | oss://test-bucket/test-object.zip | 
| Notification | Notification | 否 | 消息通知配置,详细内容请单击 Notification 查看,异步通知消息格式请参见异步通知消息格式。 说明 
智能媒体管理目前接口调用回调不支持指定回调地址,建议您使用 MNS。
 | |
| TargetURI | string | 否 | 解压文件的目标 OSS 地址。被选中的文件或压缩包会解压到该地址下。 OSS 地址规则为 oss://${Bucket}/${Object},其中 | oss://test-bucket/test-dir/ | 
创建解压缩任务请如果需要获取具体解压信息,请设置Notification中的ExtendedMessageURI参数。该文件中包含的信息结构如下所示:
{
  "Password" : "压缩包的密码",
  "IsEncryption": "true/false, 压缩包是否加密",
  "ArchiveFiles": [
    {
      "URI": "解压后的文件地址,例 oss://test-bucket/test-dir/test.txt",
      "PathName": "文件相对于压缩包的路径,例如./test.txt",
      "Reason": "如果预览失败,该文件预览失败的原因",
      "IsFolder": "true/false,该文件是否是文件夹",
      "PackedSize": "压缩包内文件大小",
      "UnPackedSize": "解压后文件大小",
      "FileAccessTime": "文件时间信息",
    },
    {
      "URI": "oss://test-bucket/test-dir/text.doc",
      "PathName": "./text.doc",
      "Reason": "",
      "IsFolder": "true",
      "PackedSize": "102",
      "UnPackedSize": "150",
      "FileAccessTime": "2023-07-21T09:46:35Z",
    },
  ]
}
返回参数
示例
正常返回示例
JSON格式
{
  "RequestId": "EC564A9A-BA5C-4499-A087-D9B9E76E*****",
  "EventId": "0ED-1Bz8z71k5TtsUejT4UJ16Es*****",
  "TaskId": "FileUncompression-16ab5dd6-af02-480e-9ed7-a8d51b1*****"
}错误码
访问错误中心查看更多错误码。
变更历史
| 变更时间 | 变更内容概要 | 操作 | 
|---|---|---|
| 2023-08-30 | OpenAPI 入参发生变更 | 查看变更详情 | 
| 2023-04-03 | OpenAPI 入参发生变更 | 查看变更详情 | 
| 2023-03-09 | OpenAPI 入参发生变更 | 查看变更详情 | 
