调用RestoreObject接口解冻归档类型、冷归档、深度冷归档类型的文件(Object)。
解冻过程
不同存储类型的Object的解冻过程相同。Object的解冻过程如下。
初始时,Object处于冷冻状态。
提交一次解冻请求后,Object处于解冻中状态。
服务端完成解冻任务后,Object进入解冻状态。此时您可以读取Object。
如果Object处于解冻状态时,再次提交一次解冻请求,Object的解冻状态持续时间在原基础上累加。延长后的总时长不能超过每种存储类型的解冻状态持续时间的最大值。
解冻状态结束后,Object再次返回到冷冻状态。
注意事项
RestoreObject接口只针对归档、冷归档和深度冷归档类型的Object,不适用于标准类型和低频访问类型的Object。
对于Object第一次调用RestoreObject接口,则返回202。如果已经成功调用过RestoreObject接口,且Object已完成解冻,再次调用时返回200 OK。
对于正在解冻中的Object不支持重复调用RestoreObject接口,需要等待Object解冻完成后再次调用RestoreObject接口。否则报错409。
对于开启版本控制的Bucket,Object的各个版本可以对应不同的存储类型。调用RestoreObject接口默认解冻Object当前版本,您可以通过指定versionId的方式来解冻Object指定版本。
计费说明
请求语法
POST /ObjectName?restore HTTP/1.1
Host: archive-bucket.oss-cn-hangzhou.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue
请求头
此接口仅包含公共请求头。更多信息,请参见公共请求头(Common Request Headers)。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
RestoreRequest | 容器 | 是 | 不涉及 | 解冻请求信息。 子节点:Days、JobParameters |
Days | 整型 | 是 | 2 | 设置归档、冷归档以及深度冷归档类型Object的解冻天数。
父节点:RestoreRequest |
JobParameters | 容器 | 否 | 不涉及 | 解冻优先级的容器。仅在解冻冷归档、深度冷归档类型的Object时有效。 如果不传入JobParameters节点,则解冻优先级默认为Standard。 父节点:RestoreRequest 子节点:Tier |
Tier | 字符串 | 否 | Standard | 冷归档、深度冷归档类型Object解冻优先级。取值范围如下:
父节点:JobParameters |
响应头
名称 | 类型 | 示例值 | 描述 |
x-oss-object-restore-priority | 字符串 | Standard | 解冻优先级。仅处于解冻状态的冷归档或者深度冷归档类型的Object才显示该字段。 |
x-oss-version-id | 字符串 | CAEQNRiBgMClj7qD0BYiIDQ5Y2QyMjc3NGZkODRlMTU5M2VkY2U3MWRiNGRh**** | Object的版本ID。仅解冻Object指定版本时才显示该字段。 |
此接口还包含公共响应头。更多信息,请参见公共响应头(Common Response Headers)。
示例
第一次对处于冷冻状态的归档类型Object提交解冻请求
请求示例
POST /oss.jpg?restore HTTP/1.1 Host: oss-archive-example.oss-cn-hangzhou.aliyuncs.com Date: Sat, 15 Apr 2017 07:45:28 GMT Authorization: OSS e1Unnbm1rg****:y4eyu+4yje5ioRCr****
返回示例
HTTP/1.1 202 Accepted Date: Sat, 15 Apr 2017 07:45:28 GMT Content-Length: 0 Connection: keep-alive Server: AliyunOSS x-oss-request-id: 5374A2880232A65C23002D74
对处于解冻中状态的归档类型Object提交解冻请求
请求示例
POST /oss.jpg?restore HTTP/1.1 Host: oss-archive-example.oss-cn-hangzhou.aliyuncs.com Date: Sat, 15 Apr 2017 07:45:29 GMT Authorization: OSS e1Unnbm1rg****:21qtGJ+ykDVmdy4eyu+N****
返回示例
HTTP/1.1 409 Conflict Date: Sat, 15 Apr 2017 07:45:29 GMT Content-Length: 556 Connection: keep-alive Server: AliyunOSS x-oss-request-id: 5374A2880232A65C23002D74 <?xml version="1.0" encoding="UTF-8"?> <Error> <Code>RestoreAlreadyInProgress</Code> <Message>The restore operation is in progress.</Message> <RequestId>58EAF141461FB42C2B000008</RequestId> <HostId>10.101.XX.XX</HostId> </Error>
对处于解冻状态的归档类型Object提交解冻请求
请求示例
POST /oss.jpg?restore HTTP/1.1 Host: oss-archive-example.oss-cn-hangzhou.aliyuncs.com Date: Sat, 15 Apr 2017 07:45:29 GMT Authorization: OSS e1Unnbm1rg****:u6O6FMJnn+WuBwbByZxm1+y4eyu+N**** <RestoreRequest> <Days>2</Days> </RestoreRequest>
返回示例
HTTP/1.1 200 Ok Date: Sat, 15 Apr 2017 07:45:30 GMT Content-Length: 0 Connection: keep-alive Server: AliyunOSS x-oss-request-id: 5374A2880232A65C23002D74
对处于解冻状态的冷归档或者深度冷归档类型Object提交解冻请求
请求示例
POST /coldarchiveobject?restore HTTP/1.1 Host: cold-archive-bucket.oss-cn-hangzhou.aliyuncs.com User-Agent: aliyun-sdk-go/v2.1.0 (Darwin/17.5.0/x86_64;go1.11.8)/ossutil-v1.6.12 Content-Length: 99 Authorization: OSS LTAI4FjmjjhjiYK6kMaV****:Gi1x7YHqTw+NQCJo0fKBHcYQ**** Content-Type: text/plain; charset=utf-8 Date: Tue, 21 Apr 2020 11:09:19 GMT Accept-Encoding: gzip <RestoreRequest> <Days>2</Days> <JobParameters> <Tier>Standard</Tier> </JobParameters> </RestoreRequest>
返回示例
HTTP/1.1 200 OK Server: AliyunOSS Date: Tue, 21 Apr 2020 11:09:19 GMT Content-Length: 0 Connection: keep-alive x-oss-request-id: 5E9ED45F093E2F3930318EA0 x-oss-object-restore-priority: Standard x-oss-server-time: 10
指定versionId来解冻指定版本的Object
请求示例
POST /oss.jpg?restore&versionId=CAEQNRiBgMClj7qD0BYiIDQ5Y2QyMjc3NGZkODRlMTU5M2VkY2U3MWRiNGRh**** HTTP/1.1 Host: oss-archive-example.oss-cn-hangzhou.aliyuncs.com Date: Tue, 09 Apr 2019 06:50:48 GMT Authorization: OSS o3shiyktjw1****:2JND5qqlAlaA1/kLO4kBbGTw****
返回示例
HTTP/1.1 202 Accepted Date: Tue, 09 Apr 2019 06:50:48 GMT Content-Length: 0 Connection: keep-alive Server: AliyunOSS x-oss-version-id: CAEQNRiBgMClj7qD0BYiIDQ5Y2QyMjc3NGZkODRlMTU5M2VkY2U3MWRiNGRh**** x-oss-request-id: 5CAC40C8B7AEADE017000653
SDK
此接口对应的各语言SDK如下:
错误码
错误码 | HTTP状态码 | 描述 |
OperationNotSupported | 400 | 目标Object不支持解冻,该Object不是归档、冷归档或者深度冷归档类型。 |
NoSuchKey | 404 | 目标Object不存在。 |
RestoreAlreadyInProgress | 409 | 您已经成功调用过RestoreObject接口,且服务端正在执行解冻操作。请不要重复提交RestoreObject。 |